{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Importing PulP solver\n",
    "from pulp import *"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the Plant Location Alternatives\n",
    "plant_locations=['Mina Salman','Port of Alexandria','Port of Bandar Abbas','Port of Umm Qasr','Port of Haifa','Port of Aqaba','Port of Shuwaikh','Port of Beirut','Port of Salalah','Port of Gaza','Port of Doha','Port of King Abdul Aziz','Port of Jeddah','Port of Latakia','Port of Mersin','Port of Jebel Ali','Port of Hodeidah']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the demand points\n",
    "demand_points=['Mina Salman','Larnaca Port','Port of Alexandria','Port of Bandar Abbas','Port of Umm Qasr','Port of Haifa','Port of Aqaba','Port of Shuwaikh','Port of Beirut','Port of Salalah','Port of Gaza','Port of Doha','Port of King Abdul Aziz','Port of Jeddah','Port of Latakia','Port of Mersin','Port of Jebel Ali','Port of Hodeidah']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Carbon Fiber Supplying Points\n",
    "supply_points2=['Port of Shanghai','Port of Marseille','Port of Hamburg_Germany','Port of Budapest','Port of Jawaharlal Nehru','Port of Nagoya','Port of Busan','Port of Manzanillo','Port of Kaohsiung','Port of Mersin','Port of Immingham','Port of New York','Port of Los Angeles']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Steel Supplying Points\n",
    "supply_points3=['Port of Buenos Aires','Port of Newcastle','Port of Hedland','Port of Vienna','Port of Antwerp','Port of Santos','Port of Montreal','Port of Vancouver','Port of Shanghai','Port of Hamburg_Czeck','Port of Alexandria','Port of Marseille','Port of Hamburg_Germany','Port of Budapest','Port of Jawaharlal Nehru','Port of Tanjung Priok','Port of Bandar Abbas','Port of Haifa','Port of Gioia Tauro','Port of Nagoya','Port of Aqaba','Port of Busan','Port of Manzanillo','Port of Casablanca','Port of Rotterdam','Port of Salalah','Port of Karachi','Port of Gdansk','Port of Doha','Port of Vladivostok','Port of Novorossiysk','Port of St. Petersburg','Port of King Abdul Aziz','Port of Jeddah','Port of Bratislava','Port of Durban','Port of Algeciras','Port of Gothenburg','Port of Latakia','Port of Kaohsiung','Port of Bangkok','Port of Mersin','Port of Odessa','Port of Jebel Ali','Port of Immingham','Port of New York','Port of Los Angeles','Port of Saigon']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "#HSS Supplying Points\n",
    "supply_points4=['Port of Buenos Aires','Port of Newcastle','Port of Hedland','Port of Vienna','Port of Antwerp','Port of Santos','Port of Montreal','Port of Vancouver','Port of Shanghai','Port of Hamburg_Czeck','Port of Alexandria','Port of Marseille','Port of Hamburg_Germany','Port of Budapest','Port of Jawaharlal Nehru','Port of Tanjung Priok','Port of Bandar Abbas','Port of Haifa','Port of Gioia Tauro','Port of Nagoya','Port of Aqaba','Port of Busan','Port of Manzanillo','Port of Casablanca','Port of Rotterdam','Port of Salalah','Port of Karachi','Port of Gdansk','Port of Doha','Port of Vladivostok','Port of Novorossiysk','Port of St. Petersburg','Port of King Abdul Aziz','Port of Jeddah','Port of Bratislava','Port of Durban','Port of Algeciras','Port of Gothenburg','Port of Latakia','Port of Kaohsiung','Port of Bangkok','Port of Mersin','Port of Odessa','Port of Jebel Ali','Port of Immingham','Port of New York','Port of Los Angeles','Port of Saigon']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Aluminium Supplying Points\n",
    "supply_points5=['Port of Buenos Aires','Port of Newcastle','Port of Hedland','Port of Baku','Port of Mina Salman','Port of Ploce','Port of Santos','Port of Douala','Port of Montreal','Port of Vancouver','Port of Shanghai','Port of Alexandria','Port of Marseille','Port of Hamburg_Germany','Port of Tema','Port of Piraeus','Port of Budapest','Port of Reykjavik','Port of Jawaharlal Nehru','Port of Tanjung Priok','Port of Bandar Abbas','Port of Gioia Tauro','Port of Nagoya','Port of Aktau','Penang Port','Port of Manzanillo','Port of Belgrade','Port of Maputo','Port of Rotterdam','Port of Tauranga','Port of Lagos','Port of Oslo','Port of Salalah','Port of Gdansk','Port of Doha','Port of Constanta','Port of Vladivostok','Port of Novorossiysk','Port of St. Petersburg','Port of Bratislava','Port of Koper','Port of Durban','Port of Algeciras','Port of Gothenburg','Port of Basel','Port of Riga','Port of Mersin','Port of Odessa','Port of Jebel Ali','Port of Immingham','Port of New York','Port of Los Angeles','Port of Puerto Cabello']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Magnesium Supplying Points\n",
    "supply_points6=['Port of Santos','Port of Montreal','Port of Vancouver','Port of Shanghai','Port of Marseille','Port of Bandar Abbas','Port of Haifa','Port of Aktau','Port of Busan','Penang Port','Port of Oslo','Port of Vladivostok','Port of Novorossiysk','Port of St. Petersburg','Port of Belgrade','Port of Mersin','Port of Odessa','Port of New York','Port of Los Angeles']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Plastic Supplying Points\n",
    "supply_points7=['Port of Buenos Aires','Port of Antwerp','Port of Santos','Port of Montreal','Port of Vancouver','Port of Shanghai','Buenaventura','Port of Alexandria','Port of Marseille','Port of Hamburg_Germany','Port of Jawaharlal Nehru','Port of Gioia Tauro','Port of Nagoya','Port of Busan','Port of Shuwaikh','Penang Port','Port of Manzanillo','Port of Rotterdam','Port of Lagos','Port of Salalah','Port of Gdansk','Port of Doha','Port of King Abdul Aziz','Port of Jeddah','Port of Singapore','Port of Durban','Port of Algeciras','Port of Bangkok','Port of Jebel Ali','Port of Immingham','Port of New York','Port of Los Angeles','Port of Saigon']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Rubber Supplying Points\n",
    "supply_points8=['Port of Santos','Sihanoukville','Douala','Port of Shanghai','Puerto Quetzal','Port of Jawaharlal Nehru','Port of Tanjung Priok','Port of Abidjan','Port of Monrovia','Penang Port','Port of Manzanillo','Port of Yangon','Port of Lagos','Port of Manila','Port of  Colombo','Port of Bangkok','Port of Saigon']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Glass Supplying Points\n",
    "supply_points9=['Port of Vienna','Port of Antwerp','Port of Shanghai','Port of Hamburg_Czeck','Port of Marseille','Port of Hamburg_Germany','Port of Hong Kong','Port of Budapest','Port of Jawaharlal Nehru','Port of Gioia Tauro','Port of Nagoya','Port of Busan','Penang Port','Port of Manzanillo','Port of Rotterdam','Port of Gdansk','Port of Vladivostok','Port of Novorossiysk','Port of St. Petersburg','Port of Algeciras','Port of Bangkok','Port of Mersin','Port of Immingham','Port of New York','Port of Los Angeles','Port of Saigon']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the distances\n",
    "distance1 = dict(zip(demand_points,[dict(zip(plant_locations, [0,1502.3222,380,356.9374,1177.3222,1233.0458,285.9374,1239.5253,174.9461,1260.3222,140,82.9374,918.7908,1374.4907,1410.3222,327,904.3502])),\n",
    "dict(zip(plant_locations, [1357.3222,426,1685.739,1104.739,180,542.0412,1162.9377,138,1532.2683,207,1497.3222,1330.7564,1035,275,253.5098,1684.3222,1482])),\n",
    "dict(zip(plant_locations, [1502.3222,0,1840.7564,1326.728,325,548.2183,1307.9377,395,1677.2683,242,1642.3222,1475.7564,1024,490,546,1829.3222,1517])),\n",
    "dict(zip(plant_locations, [380,1840.7564,0,581,1515.7564,1570.184,537,1547.739,554.9461,1598.7564,355,365,1259.1688,1604.758,1693.758,173,1155.4128])),\n",
    "dict(zip(plant_locations, [356.9374,1326.728,581,0,1001.728,1108.3654,71,966.739,531.8835,1084.728,490,274,1063.6569,1023.758,1112.758,606,689.4128])),\n",
    "dict(zip(plant_locations, [1177.3222,325,1515.7564,1001.728,0,362.0412,982.9377,81,1352.2683,83,1317.3222,1150.7564,911,237,233,1504.3222,1358])),\n",
    "dict(zip(plant_locations, [1233.0458,548.2183,1570.184,1108.3654,362.0412,0,1037.3654,443.0412,1407.9919,445.0412,1373.0458,1205.184,571,599.0412,595.0412,1560.0458,1110])),\n",
    "dict(zip(plant_locations, [285.9374,1307.9377,537,71,982.9377,1037.3654,0,1030.8859,460.8835,1065.9377,421,203,992.6569,1088.5533,1177.5533,562,618.4128])),\n",
    "dict(zip(plant_locations, [1239.5253,395,1547.739,966.739,81,443.0412,1030.8859,0,1414.4714,153,1379.5253,1216.1991,981,185.4752,191,1566.5253,1428])),\n",
    "dict(zip(plant_locations, [174.9461,1677.2683,554.9461,531.8835,1352.2683,1407.9919,460.8835,1414.4714,0,1435.2683,314.9461,257.8835,1093.7369,1549.4368,1585.2683,501.9461,833])),\n",
    "dict(zip(plant_locations, [1260.3222,242,1598.7564,1084.728,83,445.0412,1065.9377,153,1435.2683,0,1400.3222,1233.7564,828,248,316,1587.3222,1275])),\n",
    "dict(zip(plant_locations, [140,1642.3222,355,490,1317.3222,1373.0458,421,1379.5253,314.9461,1400.3222,0,219,1044.4928,1509.5533,1550.3222,187,1039.4128])),\n",
    "dict(zip(plant_locations, [82.9374,1475.7564,365,274,1150.7564,1205.184,203,1216.1991,257.8835,1233.7564,219,0,894.1688,1291.5533,1380.5533,389,821.4128])),\n",
    "dict(zip(plant_locations, [918.7908,1024,1259.1688,1063.6569,911,571,992.6569,981,1093.7369,828,1044.4928,894.1688,0,1076,1144,1231.102,539])),\n",
    "dict(zip(plant_locations, [1374.4907,490,1604.758,1023.758,237,599.0412,1088.5533,185.4752,1549.4368,248,1509.5533,1291.5533,1076,0,89,1629.758,1523])),\n",
    "dict(zip(plant_locations, [1410.3222,546,1693.758,1112.758,233,595.0412,1177.5533,191,1585.2683,316,1550.3222,1380.5533,1144,89,0,1718.758,1591])),\n",
    "dict(zip(plant_locations, [327,1829.3222,173,606,1504.3222,1560.0458,562,1566.5253,501.9461,1587.3222,187,389,1231.102,1629.758,1718.758,0,1180.4128])),\n",
    "dict(zip(plant_locations, [904.3502,1517,1155.4128,689.4128,1358,1110,618.4128,1428,833,1275,1039.4128,821.4128,539,1523,1591,1180.4128,0]))]))\n",
    "            "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the distances\n",
    "distance2 = dict(zip(supply_points2,[dict(zip(plant_locations, [6882.00,8365.00,6557.00,7139.00,8336.00,7912.00,7094.00,8385.00,6270.00,7660.00,6814.00,6922.00,7341.00,8550.00,8546.00,6627.00,6802.00])),\n",
    "dict(zip(plant_locations, [5332.00,1805.00,5024.00,5603.00,1946.00,2282.00,5558.00,1900.00,4081.00,1631.00,5267.00,5388.00,2709.00,1830.00,1806.00,5080.00,3245.00])),\n",
    "dict(zip(plant_locations, [7561.00,4034.00,7250.00,7832.00,4173.00,4509.00,7788.00,4130.00,6307.00,3973.00,7493.00,7615.00,4935.00,4057.00,4032.00,7306.00,5475.00])),\n",
    "dict(zip(plant_locations, [5615.00,2047.00,5304.00,5886.00,2192.00,2563.00,5841.00,2148.00,4362.00,1992.00,5547.00,5669.00,2989.00,2052.00,2028.00,5360.00,3528.00])),\n",
    "dict(zip(plant_locations, [1589.00,3540.00,1265.00,1847.00,3510.00,3086.00,1802.00,3560.00,1143.00,3243.00,1522.00,1630.00,2515.00,3725.00,3720.00,1335.00,1977.00])),\n",
    "dict(zip(plant_locations, [7759.00,9243.00,7435.00,8017.00,9214.00,8790.00,7972.00,9263.00,7148.00,8308.00,7692.00,7800.00,8219.00,9428.00,9424.00,7505.00,7680.00])),\n",
    "dict(zip(plant_locations, [7398.00,8882.00,7074.00,7655.00,8852.00,8428.00,7611.00,8901.00,6786.00,8020.00,7330.00,7438.00,7857.00,9066.00,9062.00,7143.00,7318.00])),\n",
    "dict(zip(plant_locations, [13061.00,9534.00,12745.00,13332.00,9673.00,10011.00,13286.00,9631.00,11791.00,8088.00,12977.00,13099.00,10419.00,9541.00,9516.00,12790.00,10974.00])),\n",
    "dict(zip(plant_locations, [6316.00,7800.00,5991.00,6573.00,7770.00,7346.00,6528.00,7819.00,5704.00,7144.00,6248.00,6356.00,6775.00,7986.00,7981.00,6063.00,6236.00])),\n",
    "dict(zip(plant_locations, [3831.00,546.00,3520.00,4102.00,233.00,778.00,4057.00,191.00,2577.00,316.00,3763.00,3885.00,1205.00,89.00,0.00,3576.00,1744.00])),\n",
    "dict(zip(plant_locations, [7334.00,3806.00,7023.00,7605.00,3944.00,4282.00,7560.00,3903.00,6081.00,3399.00,7267.00,7388.00,4708.00,3830.00,3804.00,7080.00,5247.00])),\n",
    "dict(zip(plant_locations, [9168.00,5618.00,8862.00,9417.00,5756.00,6104.00,9392.00,5715.00,7930.00,5196.00,9392.00,9222.00,6521.00,5642.00,5617.00,8918.00,7105.00])),\n",
    "dict(zip(plant_locations, [14552.00,11025.00,11057.00,11524.00,11048.00,11501.00,11504.00,11122.00,11137.00,9280.00,11279.00,11344.00,11927.00,11049.00,11024.00,11116.00,12465.00]))]))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the distances\n",
    "distance3 = dict(zip(supply_points3,[dict(zip(plant_locations, [9420.00,8607.00,9112.00,9691.00,8747.00,9083.00,9646.00,8704.00,8169.00,7282.00,9355.00,9476.00,8921.00,8631.00,8606.00,9168.00,8382.00])),\n",
    "dict(zip(plant_locations, [8544.00,9914.00,8220.00,8802.00,9885.00,9461.00,8757.00,9934.00,7936.00,9192.00,8477.00,8585.00,8890.00,10099.00,10095.00,8290.00,8351.00])),\n",
    "dict(zip(plant_locations, [6034.00,7404.00,5710.00,6291.00,7374.00,6950.00,6246.00,7423.00,5424.00,6801.00,5966.00,6074.00,6379.00,7588.00,7584.00,5779.00,5840.00])),\n",
    "dict(zip(plant_locations, [5729.00,2163.00,5419.00,6000.00,2306.00,2677.00,5955.00,2262.00,4476.00,2106.00,5662.00,5783.00,3103.00,2167.00,2142.00,5475.00,3642.00])),\n",
    "dict(zip(plant_locations, [7193.00,3665.00,6882.00,7464.00,3804.00,4141.00,7419.00,3761.00,5939.00,3327.94,7125.00,7247.00,4567.00,3689.00,3664.00,6938.00,5106.00])),\n",
    "dict(zip(plant_locations, [9662.00,7529.00,9351.00,9933.00,7667.00,8005.00,9888.00,7626.00,8408.00,6360.00,9594.00,9716.00,8432.00,7553.00,7528.00,9407.00,8624.00])),\n",
    "dict(zip(plant_locations, [9594.00,6196.00,9414.00,9808.00,6336.00,6672.00,9794.00,6020.00,8471.00,5165.00,9657.00,9778.00,7099.00,6220.00,6195.00,9470.00,7364.00])),\n",
    "dict(zip(plant_locations, [15871.00,12322.00,10381.00,10848.00,12461.00,12797.00,10828.00,12441.00,10461.00,10365.00,10603.00,10668.00,13108.00,12345.00,12320.00,10440.00,11270.00])),\n",
    "dict(zip(plant_locations, [6882.00,8365.00,6557.00,7139.00,8336.00,7912.00,7094.00,8385.00,6270.00,7660.00,6814.00,6922.00,7341.00,8550.00,8546.00,6627.00,6802.00])),\n",
    "dict(zip(plant_locations, [7561.00,4033.00,7250.00,7832.00,4173.00,4509.00,7788.00,4130.00,6307.00,3595.70,7493.00,7615.00,4935.00,4057.00,4032.00,7306.00,5475.00])),\n",
    "dict(zip(plant_locations, [3650.00,0.00,3340.00,3921.00,370.00,598.00,3877.00,427.00,2397.00,242.00,3583.00,3704.00,1024.00,571.00,546.00,3396.00,1563.00])),\n",
    "dict(zip(plant_locations, [5332.00,1805.00,5024.00,5603.00,1946.00,2282.00,5558.00,1900.00,4081.00,1631.00,5267.00,5388.00,2709.00,1830.00,1806.00,5080.00,3245.00])),\n",
    "dict(zip(plant_locations, [7561.00,4034.00,7250.00,7832.00,4173.00,4509.00,7788.00,4130.00,6307.00,3973.00,7493.00,7615.00,4935.00,4057.00,4032.00,7306.00,5475.00])),\n",
    "dict(zip(plant_locations, [5615.00,2047.00,5304.00,5886.00,2192.00,2563.00,5841.00,2148.00,4362.00,1992.00,5547.00,5669.00,2989.00,2052.00,2028.00,5360.00,3528.00])),\n",
    "dict(zip(plant_locations, [1589.00,3540.00,1265.00,1847.00,3510.00,3086.00,1802.00,3560.00,1143.00,3243.00,1522.00,1630.00,2515.00,3725.00,3720.00,1335.00,1977.00])),\n",
    "dict(zip(plant_locations, [4660.00,6030.00,4336.00,4917.00,6000.00,5576.00,4873.00,6049.00,4050.00,5814.00,4592.00,4700.00,5005.00,6215.00,6210.00,4405.00,4466.00])),\n",
    "dict(zip(plant_locations, [380.00,3340.00,0.00,581.00,3310.00,2886.00,537.00,3359.00,943.00,2922.00,355.00,365.00,2315.00,3524.00,3520.00,173.00,1776.00])),\n",
    "dict(zip(plant_locations, [3621.00,370.00,3310.00,3891.00,0.00,568.00,3847.00,81.00,2367.00,83.00,3553.00,3674.00,995.00,237.00,233.00,3366.00,1534.00])),\n",
    "dict(zip(plant_locations, [4620.00,1092.00,4310.00,4891.00,1230.00,1568.00,4847.00,1189.00,3367.00,1336.00,4553.00,4674.00,1994.00,1116.00,1091.00,4366.00,2533.00])),\n",
    "dict(zip(plant_locations, [7759.00,9243.00,7435.00,8017.00,9214.00,8790.00,7972.00,9263.00,7148.00,8308.00,7692.00,7800.00,8219.00,9428.00,9424.00,7505.00,7680.00])),\n",
    "dict(zip(plant_locations, [3197.00,598.00,2886.00,3467.00,568.00,0.00,3423.00,618.00,1943.00,486.00,3423.00,3250.00,571.00,783.00,778.00,2942.00,1110.00])),\n",
    "dict(zip(plant_locations, [7398.00,8882.00,7074.00,7655.00,8852.00,8428.00,7611.00,8901.00,6786.00,8020.00,7330.00,7438.00,7857.00,9066.00,9062.00,7143.00,7318.00])),\n",
    "dict(zip(plant_locations, [13061.00,9534.00,12745.00,13332.00,9673.00,10011.00,13286.00,9631.00,11791.00,8088.00,12977.00,13099.00,10419.00,9541.00,9516.00,12790.00,10974.00])),\n",
    "dict(zip(plant_locations, [5852.00,2325.00,5542.00,6123.00,2463.00,2800.00,6079.00,2421.00,4599.00,2178.00,5785.00,5906.00,3227.00,2348.00,2324.00,5598.00,3766.00])),\n",
    "dict(zip(plant_locations, [7284.00,3756.00,6973.00,7555.00,3894.00,4231.00,7510.00,3852.00,6030.00,3335.00,7216.00,7338.00,4658.00,3780.00,3755.00,7029.00,5197.00])),\n",
    "dict(zip(plant_locations, [1253.00,2397.00,943.00,1524.00,2367.00,1943.00,1480.00,2416.00,0.00,2086.00,1186.00,1307.00,1372.00,2582.00,2577.00,999.00,833.00])),\n",
    "dict(zip(plant_locations, [1000.00,3423.00,676.00,1258.00,3394.00,2970.00,1213.00,3443.00,1027.00,2952.00,933.00,1041.00,2399.00,3608.00,3604.00,746.00,1860.00])),\n",
    "dict(zip(plant_locations, [8277.00,4750.00,7967.00,8548.00,4889.00,5224.00,8504.00,4847.00,7025.00,4119.00,8213.00,8334.00,5654.00,4775.00,4751.00,8025.00,6190.00])),\n",
    "dict(zip(plant_locations, [140.00,3583.00,355.00,490.00,3553.00,3423.00,421.00,3602.00,1186.00,3139.00,0.00,219.00,2558.00,3767.00,3763.00,187.00,2019.00])),\n",
    "dict(zip(plant_locations, [7981.00,9465.00,7657.00,8239.00,9435.00,9011.00,8194.00,9485.00,7370.00,8522.00,7914.00,8022.00,8441.00,9650.00,9645.00,7727.00,7902.00])),\n",
    "dict(zip(plant_locations, [5139.00,1572.00,4829.00,5410.00,1715.00,2087.00,5366.00,1672.00,3886.00,1295.00,5072.00,5193.00,2680.00,1577.00,1552.00,4885.00,3052.00])),\n",
    "dict(zip(plant_locations, [8787.00,5259.00,8476.00,9058.00,5398.00,5735.00,9013.00,5355.00,7533.00,4545.00,8719.00,8841.00,6161.00,5283.00,5258.00,8532.00,6700.00])),\n",
    "dict(zip(plant_locations, [108.00,3704.00,365.00,274.00,3674.00,3250.00,203.00,3724.00,1307.00,3203.00,219.00,0.00,2680.00,3889.00,3885.00,389.00,2141.00])),\n",
    "dict(zip(plant_locations, [2626.00,1024.00,2315.00,2897.00,995.00,571.00,2852.00,1044.00,1372.00,828.00,2558.00,2680.00,0.00,1209.00,1205.00,2371.00,539.00])),\n",
    "dict(zip(plant_locations, [5717.00,2150.00,5407.00,5988.00,2293.00,2665.00,5944.00,2250.00,4464.00,2243.00,5650.00,5771.00,3092.00,2155.00,2130.00,5463.00,3631.00])),\n",
    "dict(zip(plant_locations, [4824.00,5347.00,4514.00,5095.00,5318.00,4894.00,5050.00,5367.00,3571.00,7346.00,4757.00,4878.00,4323.00,5534.00,5530.00,4572.00,3786.00])),\n",
    "dict(zip(plant_locations, [5631.00,2103.00,5321.00,5902.00,2242.00,2579.00,5858.00,2200.00,4378.00,2004.00,5564.00,5685.00,3006.00,2127.00,2102.00,5377.00,3545.00])),\n",
    "dict(zip(plant_locations, [7825.00,4298.00,7514.00,8096.00,4436.00,4774.00,8051.00,4394.00,6418.00,3775.72,7757.00,7879.00,5200.00,4323.00,4299.00,7573.00,5739.00])),\n",
    "dict(zip(plant_locations, [3835.00,571.00,3524.00,4106.00,237.00,783.00,4061.00,196.00,2582.00,248.00,3767.00,3889.00,1209.00,0.00,89.00,3580.00,1748.00])),\n",
    "dict(zip(plant_locations, [6316.00,7800.00,5991.00,6573.00,7770.00,7346.00,6528.00,7819.00,5704.00,7144.00,6248.00,6356.00,6775.00,7986.00,7981.00,6063.00,6236.00])),\n",
    "dict(zip(plant_locations, [5102.00,6585.00,4778.00,5359.00,6556.00,6132.00,5315.00,6605.00,4490.00,6341.00,5034.00,5142.00,5561.00,6770.00,6766.00,4847.00,5022.00])),\n",
    "dict(zip(plant_locations, [3831.00,546.00,3520.00,4102.00,233.00,778.00,4057.00,191.00,2577.00,316.00,3763.00,3885.00,1205.00,89.00,0.00,3576.00,1744.00])),\n",
    "dict(zip(plant_locations, [4957.00,1390.00,4647.00,5228.00,1533.00,1905.00,5184.00,1490.00,3704.00,1181.00,4890.00,5011.00,2332.00,1395.00,1370.00,4703.00,2871.00])),\n",
    "dict(zip(plant_locations, [327.00,3396.00,173.00,606.00,3366.00,2942.00,562.00,3415.00,999.00,2975.00,187.00,389.00,2371.00,3580.00,3576.00,0.00,1832.00])),\n",
    "dict(zip(plant_locations, [7334.00,3806.00,7023.00,7605.00,3944.00,4282.00,7560.00,3903.00,6081.00,3399.00,7267.00,7388.00,4708.00,3830.00,3804.00,7080.00,5247.00])),\n",
    "dict(zip(plant_locations, [9168.00,5618.00,8862.00,9417.00,5756.00,6104.00,9392.00,5715.00,7930.00,5196.00,9392.00,9222.00,6521.00,5642.00,5617.00,8918.00,7105.00])),\n",
    "dict(zip(plant_locations, [14552.00,11025.00,11057.00,11524.00,11048.00,11501.00,11504.00,11122.00,11137.00,9280.00,11279.00,11344.00,11927.00,11049.00,11024.00,11116.00,12465.00])),\n",
    "dict(zip(plant_locations, [4964.00,6448.00,4640.00,5221.00,6418.00,5994.00,5177.00,6467.00,4353.00,6368.00,4896.00,5004.00,5423.00,6633.00,6628.00,4709.00,4884.00]))]))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the distances\n",
    "distance4 = dict(zip(supply_points4,[dict(zip(plant_locations, [9420.00,8607.00,9112.00,9691.00,8747.00,9083.00,9646.00,8704.00,8169.00,7282.00,9355.00,9476.00,8921.00,8631.00,8606.00,9168.00,8382.00])),\n",
    "dict(zip(plant_locations, [8544.00,9914.00,8220.00,8802.00,9885.00,9461.00,8757.00,9934.00,7936.00,9192.00,8477.00,8585.00,8890.00,10099.00,10095.00,8290.00,8351.00])),\n",
    "dict(zip(plant_locations, [6034.00,7404.00,5710.00,6291.00,7374.00,6950.00,6246.00,7423.00,5424.00,6801.00,5966.00,6074.00,6379.00,7588.00,7584.00,5779.00,5840.00])),\n",
    "dict(zip(plant_locations, [5729.00,2163.00,5419.00,6000.00,2306.00,2677.00,5955.00,2262.00,4476.00,2106.00,5662.00,5783.00,3103.00,2167.00,2142.00,5475.00,3642.00])),\n",
    "dict(zip(plant_locations, [7193.00,3665.00,6882.00,7464.00,3804.00,4141.00,7419.00,3761.00,5939.00,3327.94,7125.00,7247.00,4567.00,3689.00,3664.00,6938.00,5106.00])),\n",
    "dict(zip(plant_locations, [9662.00,7529.00,9351.00,9933.00,7667.00,8005.00,9888.00,7626.00,8408.00,6360.00,9594.00,9716.00,8432.00,7553.00,7528.00,9407.00,8624.00])),\n",
    "dict(zip(plant_locations, [9594.00,6196.00,9414.00,9808.00,6336.00,6672.00,9794.00,6020.00,8471.00,5165.00,9657.00,9778.00,7099.00,6220.00,6195.00,9470.00,7364.00])),\n",
    "dict(zip(plant_locations, [15871.00,12322.00,10381.00,10848.00,12461.00,12797.00,10828.00,12441.00,10461.00,10365.00,10603.00,10668.00,13108.00,12345.00,12320.00,10440.00,11270.00])),\n",
    "dict(zip(plant_locations, [6882.00,8365.00,6557.00,7139.00,8336.00,7912.00,7094.00,8385.00,6270.00,7660.00,6814.00,6922.00,7341.00,8550.00,8546.00,6627.00,6802.00])),\n",
    "dict(zip(plant_locations, [7561.00,4033.00,7250.00,7832.00,4173.00,4509.00,7788.00,4130.00,6307.00,3595.70,7493.00,7615.00,4935.00,4057.00,4032.00,7306.00,5475.00])),\n",
    "dict(zip(plant_locations, [3650.00,0.00,3340.00,3921.00,370.00,598.00,3877.00,427.00,2397.00,242.00,3583.00,3704.00,1024.00,571.00,546.00,3396.00,1563.00])),\n",
    "dict(zip(plant_locations, [5332.00,1805.00,5024.00,5603.00,1946.00,2282.00,5558.00,1900.00,4081.00,1631.00,5267.00,5388.00,2709.00,1830.00,1806.00,5080.00,3245.00])),\n",
    "dict(zip(plant_locations, [7561.00,4034.00,7250.00,7832.00,4173.00,4509.00,7788.00,4130.00,6307.00,3973.00,7493.00,7615.00,4935.00,4057.00,4032.00,7306.00,5475.00])),\n",
    "dict(zip(plant_locations, [5615.00,2047.00,5304.00,5886.00,2192.00,2563.00,5841.00,2148.00,4362.00,1992.00,5547.00,5669.00,2989.00,2052.00,2028.00,5360.00,3528.00])),\n",
    "dict(zip(plant_locations, [1589.00,3540.00,1265.00,1847.00,3510.00,3086.00,1802.00,3560.00,1143.00,3243.00,1522.00,1630.00,2515.00,3725.00,3720.00,1335.00,1977.00])),\n",
    "dict(zip(plant_locations, [4660.00,6030.00,4336.00,4917.00,6000.00,5576.00,4873.00,6049.00,4050.00,5814.00,4592.00,4700.00,5005.00,6215.00,6210.00,4405.00,4466.00])),\n",
    "dict(zip(plant_locations, [380.00,3340.00,0.00,581.00,3310.00,2886.00,537.00,3359.00,943.00,2922.00,355.00,365.00,2315.00,3524.00,3520.00,173.00,1776.00])),\n",
    "dict(zip(plant_locations, [3621.00,370.00,3310.00,3891.00,0.00,568.00,3847.00,81.00,2367.00,83.00,3553.00,3674.00,995.00,237.00,233.00,3366.00,1534.00])),\n",
    "dict(zip(plant_locations, [4620.00,1092.00,4310.00,4891.00,1230.00,1568.00,4847.00,1189.00,3367.00,1336.00,4553.00,4674.00,1994.00,1116.00,1091.00,4366.00,2533.00])),\n",
    "dict(zip(plant_locations, [7759.00,9243.00,7435.00,8017.00,9214.00,8790.00,7972.00,9263.00,7148.00,8308.00,7692.00,7800.00,8219.00,9428.00,9424.00,7505.00,7680.00])),\n",
    "dict(zip(plant_locations, [3197.00,598.00,2886.00,3467.00,568.00,0.00,3423.00,618.00,1943.00,486.00,3423.00,3250.00,571.00,783.00,778.00,2942.00,1110.00])),\n",
    "dict(zip(plant_locations, [7398.00,8882.00,7074.00,7655.00,8852.00,8428.00,7611.00,8901.00,6786.00,8020.00,7330.00,7438.00,7857.00,9066.00,9062.00,7143.00,7318.00])),\n",
    "dict(zip(plant_locations, [13061.00,9534.00,12745.00,13332.00,9673.00,10011.00,13286.00,9631.00,11791.00,8088.00,12977.00,13099.00,10419.00,9541.00,9516.00,12790.00,10974.00])),\n",
    "dict(zip(plant_locations, [5852.00,2325.00,5542.00,6123.00,2463.00,2800.00,6079.00,2421.00,4599.00,2178.00,5785.00,5906.00,3227.00,2348.00,2324.00,5598.00,3766.00])),\n",
    "dict(zip(plant_locations, [7284.00,3756.00,6973.00,7555.00,3894.00,4231.00,7510.00,3852.00,6030.00,3335.00,7216.00,7338.00,4658.00,3780.00,3755.00,7029.00,5197.00])),\n",
    "dict(zip(plant_locations, [1253.00,2397.00,943.00,1524.00,2367.00,1943.00,1480.00,2416.00,0.00,2086.00,1186.00,1307.00,1372.00,2582.00,2577.00,999.00,833.00])),\n",
    "dict(zip(plant_locations, [1000.00,3423.00,676.00,1258.00,3394.00,2970.00,1213.00,3443.00,1027.00,2952.00,933.00,1041.00,2399.00,3608.00,3604.00,746.00,1860.00])),\n",
    "dict(zip(plant_locations, [8277.00,4750.00,7967.00,8548.00,4889.00,5224.00,8504.00,4847.00,7025.00,4119.00,8213.00,8334.00,5654.00,4775.00,4751.00,8025.00,6190.00])),\n",
    "dict(zip(plant_locations, [140.00,3583.00,355.00,490.00,3553.00,3423.00,421.00,3602.00,1186.00,3139.00,0.00,219.00,2558.00,3767.00,3763.00,187.00,2019.00])),\n",
    "dict(zip(plant_locations, [7981.00,9465.00,7657.00,8239.00,9435.00,9011.00,8194.00,9485.00,7370.00,8522.00,7914.00,8022.00,8441.00,9650.00,9645.00,7727.00,7902.00])),\n",
    "dict(zip(plant_locations, [5139.00,1572.00,4829.00,5410.00,1715.00,2087.00,5366.00,1672.00,3886.00,1295.00,5072.00,5193.00,2680.00,1577.00,1552.00,4885.00,3052.00])),\n",
    "dict(zip(plant_locations, [8787.00,5259.00,8476.00,9058.00,5398.00,5735.00,9013.00,5355.00,7533.00,4545.00,8719.00,8841.00,6161.00,5283.00,5258.00,8532.00,6700.00])),\n",
    "dict(zip(plant_locations, [108.00,3704.00,365.00,274.00,3674.00,3250.00,203.00,3724.00,1307.00,3203.00,219.00,0.00,2680.00,3889.00,3885.00,389.00,2141.00])),\n",
    "dict(zip(plant_locations, [2626.00,1024.00,2315.00,2897.00,995.00,571.00,2852.00,1044.00,1372.00,828.00,2558.00,2680.00,0.00,1209.00,1205.00,2371.00,539.00])),\n",
    "dict(zip(plant_locations, [5717.00,2150.00,5407.00,5988.00,2293.00,2665.00,5944.00,2250.00,4464.00,2243.00,5650.00,5771.00,3092.00,2155.00,2130.00,5463.00,3631.00])),\n",
    "dict(zip(plant_locations, [4824.00,5347.00,4514.00,5095.00,5318.00,4894.00,5050.00,5367.00,3571.00,7346.00,4757.00,4878.00,4323.00,5534.00,5530.00,4572.00,3786.00])),\n",
    "dict(zip(plant_locations, [5631.00,2103.00,5321.00,5902.00,2242.00,2579.00,5858.00,2200.00,4378.00,2004.00,5564.00,5685.00,3006.00,2127.00,2102.00,5377.00,3545.00])),\n",
    "dict(zip(plant_locations, [7825.00,4298.00,7514.00,8096.00,4436.00,4774.00,8051.00,4394.00,6418.00,3775.72,7757.00,7879.00,5200.00,4323.00,4299.00,7573.00,5739.00])),\n",
    "dict(zip(plant_locations, [3835.00,571.00,3524.00,4106.00,237.00,783.00,4061.00,196.00,2582.00,248.00,3767.00,3889.00,1209.00,0.00,89.00,3580.00,1748.00])),\n",
    "dict(zip(plant_locations, [6316.00,7800.00,5991.00,6573.00,7770.00,7346.00,6528.00,7819.00,5704.00,7144.00,6248.00,6356.00,6775.00,7986.00,7981.00,6063.00,6236.00])),\n",
    "dict(zip(plant_locations, [5102.00,6585.00,4778.00,5359.00,6556.00,6132.00,5315.00,6605.00,4490.00,6341.00,5034.00,5142.00,5561.00,6770.00,6766.00,4847.00,5022.00])),\n",
    "dict(zip(plant_locations, [3831.00,546.00,3520.00,4102.00,233.00,778.00,4057.00,191.00,2577.00,316.00,3763.00,3885.00,1205.00,89.00,0.00,3576.00,1744.00])),\n",
    "dict(zip(plant_locations, [4957.00,1390.00,4647.00,5228.00,1533.00,1905.00,5184.00,1490.00,3704.00,1181.00,4890.00,5011.00,2332.00,1395.00,1370.00,4703.00,2871.00])),\n",
    "dict(zip(plant_locations, [327.00,3396.00,173.00,606.00,3366.00,2942.00,562.00,3415.00,999.00,2975.00,187.00,389.00,2371.00,3580.00,3576.00,0.00,1832.00])),\n",
    "dict(zip(plant_locations, [7334.00,3806.00,7023.00,7605.00,3944.00,4282.00,7560.00,3903.00,6081.00,3399.00,7267.00,7388.00,4708.00,3830.00,3804.00,7080.00,5247.00])),\n",
    "dict(zip(plant_locations, [9168.00,5618.00,8862.00,9417.00,5756.00,6104.00,9392.00,5715.00,7930.00,5196.00,9392.00,9222.00,6521.00,5642.00,5617.00,8918.00,7105.00])),\n",
    "dict(zip(plant_locations, [14552.00,11025.00,11057.00,11524.00,11048.00,11501.00,11504.00,11122.00,11137.00,9280.00,11279.00,11344.00,11927.00,11049.00,11024.00,11116.00,12465.00])),\n",
    "dict(zip(plant_locations, [4964.00,6448.00,4640.00,5221.00,6418.00,5994.00,5177.00,6467.00,4353.00,6368.00,4896.00,5004.00,5423.00,6633.00,6628.00,4709.00,4884.00]))]))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the distances\n",
    "distance5 = dict(zip(supply_points5,[dict(zip(plant_locations, [9420.00,8607.00,9112.00,9691.00,8747.00,9083.00,9646.00,8704.00,8169.00,7282.00,9355.00,9476.00,8921.00,8631.00,8606.00,9168.00,8382.00])),\n",
    "dict(zip(plant_locations, [8544.00,9914.00,8220.00,8802.00,9885.00,9461.00,8757.00,9934.00,7936.00,9192.00,8477.00,8585.00,8890.00,10099.00,10095.00,8290.00,8351.00])),\n",
    "dict(zip(plant_locations, [6034.00,7404.00,5710.00,6291.00,7374.00,6950.00,6246.00,7423.00,5424.00,6801.00,5966.00,6074.00,6379.00,7588.00,7584.00,5779.00,5840.00])),\n",
    "dict(zip(plant_locations, [5574.00,2384.00,5292.00,5787.00,2497.00,2853.00,5767.00,2500.00,4443.00,2600.00,553.00,5597.00,3173.00,2500.00,2469.00,5390.00,3626.00])),\n",
    "dict(zip(plant_locations, [0.00,3650.00,380.00,382.00,3621.00,3197.00,310.00,3670.00,1253.00,3178.00,140.00,108.00,2626.00,3835.00,3831.00,327.00,2087.00])),\n",
    "dict(zip(plant_locations, [4839.00,1311.00,4528.00,5110.00,1449.00,1787.00,5065.00,1407.00,3585.00,1183.00,5065.00,4893.00,2213.00,1335.00,6961.00,4584.00,2752.00])),\n",
    "dict(zip(plant_locations, [9662.00,7529.00,9351.00,9933.00,7667.00,8005.00,9888.00,7626.00,8408.00,6360.00,9594.00,9716.00,8432.00,7553.00,7528.00,9407.00,8624.00])),\n",
    "dict(zip(plant_locations, [8271.00,5873.00,7961.00,8542.00,6011.00,6349.00,8498.00,5969.00,7018.00,5413.00,8498.00,8325.00,6775.00,5897.00,9537.00,8017.00,7233.00])),\n",
    "dict(zip(plant_locations, [9594.00,6196.00,9414.00,9808.00,6336.00,6672.00,9794.00,6020.00,8471.00,5165.00,9657.00,9778.00,7099.00,6220.00,6195.00,9470.00,7364.00])),\n",
    "dict(zip(plant_locations, [15871.00,12322.00,10381.00,10848.00,12461.00,12797.00,10828.00,12441.00,10461.00,10365.00,10603.00,10668.00,13108.00,12345.00,12320.00,10440.00,11270.00])),\n",
    "dict(zip(plant_locations, [6882.00,8365.00,6557.00,7139.00,8336.00,7912.00,7094.00,8385.00,6270.00,7660.00,6814.00,6922.00,7341.00,8550.00,8546.00,6627.00,6802.00])),\n",
    "dict(zip(plant_locations, [3650.00,0.00,3340.00,3921.00,370.00,598.00,3877.00,427.00,2397.00,242.00,3583.00,3704.00,1024.00,571.00,546.00,3396.00,1563.00])),\n",
    "dict(zip(plant_locations, [5332.00,1805.00,5024.00,5603.00,1946.00,2282.00,5558.00,1900.00,4081.00,1631.00,5267.00,5388.00,2709.00,1830.00,1806.00,5080.00,3245.00])),\n",
    "dict(zip(plant_locations, [7561.00,4033.00,7250.00,7832.00,4173.00,4509.00,7788.00,4130.00,6307.00,3595.70,7493.00,7615.00,4935.00,4057.00,4032.00,7306.00,5475.00])),\n",
    "dict(zip(plant_locations, [8662.00,5313.00,8352.00,8933.00,5451.00,5789.00,8889.00,5410.00,7409.00,4842.00,8889.00,8716.00,6097.00,5218.00,9928.00,8408.00,6755.00])),\n",
    "dict(zip(plant_locations, [4234.00,685.00,3923.00,4505.00,828.00,1182.00,4460.00,786.00,2981.00,658.00,4460.00,4288.00,1608.00,696.00,6356.00,3980.00,2147.00])),\n",
    "dict(zip(plant_locations, [5615.00,2047.00,5304.00,5886.00,2192.00,2563.00,5841.00,2148.00,4362.00,1992.00,5547.00,5669.00,2989.00,2052.00,2028.00,5360.00,3528.00])),\n",
    "dict(zip(plant_locations, [7980.00,4389.00,7640.00,8047.00,4529.00,4928.00,8112.00,4487.00,6666.00,3892.00,8117.00,8032.00,5293.00,4415.00,10204.00,7697.00,5832.00])),\n",
    "dict(zip(plant_locations, [1589.00,3540.00,1265.00,1847.00,3510.00,3086.00,1802.00,3560.00,1143.00,3243.00,1522.00,1630.00,2515.00,3725.00,3720.00,1335.00,1977.00])),\n",
    "dict(zip(plant_locations, [4660.00,6030.00,4336.00,4917.00,6000.00,5576.00,4873.00,6049.00,4050.00,5814.00,4592.00,4700.00,5005.00,6215.00,6210.00,4405.00,4466.00])),\n",
    "dict(zip(plant_locations, [380.00,3340.00,0.00,581.00,3310.00,2886.00,537.00,3359.00,943.00,2922.00,355.00,365.00,2315.00,3524.00,3520.00,173.00,1776.00])),\n",
    "dict(zip(plant_locations, [4620.00,1092.00,4310.00,4891.00,1230.00,1568.00,4847.00,1189.00,3367.00,1336.00,4553.00,4674.00,1994.00,1116.00,1091.00,4366.00,2533.00])),\n",
    "dict(zip(plant_locations, [7759.00,9243.00,7435.00,8017.00,9214.00,8790.00,7972.00,9263.00,7148.00,8308.00,7692.00,7800.00,8219.00,9428.00,9424.00,7505.00,7680.00])),\n",
    "dict(zip(plant_locations, [5279.00,2089.00,4996.00,5488.00,2201.00,2557.00,5471.00,2204.00,4147.00,2301.00,5239.00,5301.00,2878.00,2204.00,2174.00,5094.00,3331.00])),\n",
    "dict(zip(plant_locations, [3856.00,5340.00,3532.00,4113.00,5310.00,4886.00,4069.00,5359.00,3245.00,5210.00,3788.00,3896.00,4315.00,5525.00,5520.00,3601.00,3777.00])),\n",
    "dict(zip(plant_locations, [13061.00,9534.00,12745.00,13332.00,9673.00,10011.00,13286.00,9631.00,11791.00,8088.00,12977.00,13099.00,10419.00,9541.00,9516.00,12790.00,10974.00])),\n",
    "dict(zip(plant_locations, [5416.00,1851.00,5106.00,5687.00,1994.00,2364.00,5643.00,1949.00,4163.00,1950.00,5349.00,5470.00,2791.00,1854.00,1829.00,5162.00,3330.00])),\n",
    "dict(zip(plant_locations, [4563.00,5086.00,4252.00,4833.00,5056.00,4632.00,4789.00,5105.00,9144.00,7237.00,4789.00,4616.00,4061.00,5271.00,5872.00,4308.00,3525.00])),\n",
    "dict(zip(plant_locations, [7284.00,3756.00,6973.00,7555.00,3894.00,4231.00,7510.00,3852.00,6030.00,3335.00,7216.00,7338.00,4658.00,3780.00,3755.00,7029.00,5197.00])),\n",
    "dict(zip(plant_locations, [9753.00,11123.00,9429.00,10010.00,11093.00,10669.00,9965.00,11142.00,9144.00,10251.00,9965.00,9793.00,10098.00,11307.00,6015.00,9498.00,9559.00])),\n",
    "dict(zip(plant_locations, [8570.00,5524.00,8260.00,8841.00,5662.00,6000.00,8797.00,5620.00,7317.00,5500.00,8797.00,8624.00,6426.00,5548.00,5523.00,8316.00,6965.00])),\n",
    "dict(zip(plant_locations, [7928.00,4401.00,7617.00,8198.00,4539.00,4876.00,8060.00,4497.00,6675.00,3831.00,8154.00,7981.00,5303.00,4425.00,10049.00,7673.00,5842.00])),\n",
    "dict(zip(plant_locations, [1253.00,2397.00,943.00,1524.00,2367.00,1943.00,1480.00,2416.00,0.00,2086.00,1186.00,1307.00,1372.00,2582.00,2577.00,999.00,833.00])),\n",
    "dict(zip(plant_locations, [8277.00,4750.00,7967.00,8548.00,4889.00,5224.00,8504.00,4847.00,7025.00,4119.00,8213.00,8334.00,5654.00,4775.00,4751.00,8025.00,6190.00])),\n",
    "dict(zip(plant_locations, [140.00,3583.00,355.00,490.00,3553.00,3423.00,421.00,3602.00,1186.00,3139.00,0.00,219.00,2558.00,3767.00,3763.00,187.00,2019.00])),\n",
    "dict(zip(plant_locations, [4754.00,1186.00,4443.00,5025.00,1330.00,1702.00,4980.00,1287.00,3501.00,1029.00,4980.00,4808.00,2128.00,1192.00,6876.00,4499.00,2667.00])),\n",
    "dict(zip(plant_locations, [7981.00,9465.00,7657.00,8239.00,9435.00,9011.00,8194.00,9485.00,7370.00,8522.00,7914.00,8022.00,8441.00,9650.00,9645.00,7727.00,7902.00])),\n",
    "dict(zip(plant_locations, [5139.00,1572.00,4829.00,5410.00,1715.00,2087.00,5366.00,1672.00,3886.00,1295.00,5072.00,5193.00,2680.00,1577.00,1552.00,4885.00,3052.00])),\n",
    "dict(zip(plant_locations, [8787.00,5259.00,8476.00,9058.00,5398.00,5735.00,9013.00,5355.00,7533.00,4545.00,8719.00,8841.00,6161.00,5283.00,5258.00,8532.00,6700.00])),\n",
    "dict(zip(plant_locations, [5717.00,2150.00,5407.00,5988.00,2293.00,2665.00,5944.00,2250.00,4464.00,2243.00,5650.00,5771.00,3092.00,2155.00,2130.00,5463.00,3631.00])),\n",
    "dict(zip(plant_locations, [5057.00,1529.00,4746.00,5328.00,1667.00,2005.00,5283.00,1625.00,3803.00,1364.00,5283.00,5111.00,2431.00,1553.00,9842.00,7366.00,5633.00])),\n",
    "dict(zip(plant_locations, [4824.00,5347.00,4514.00,5095.00,5318.00,4894.00,5050.00,5367.00,3571.00,7346.00,4757.00,4878.00,4323.00,5534.00,5530.00,4572.00,3786.00])),\n",
    "dict(zip(plant_locations, [5631.00,2103.00,5321.00,5902.00,2242.00,2579.00,5858.00,2200.00,4378.00,2004.00,5564.00,5685.00,3006.00,2127.00,2102.00,5377.00,3545.00])),\n",
    "dict(zip(plant_locations, [7825.00,4298.00,7514.00,8096.00,4436.00,4774.00,8051.00,4394.00,6418.00,3775.72,7757.00,7879.00,5200.00,4323.00,4299.00,7573.00,5739.00])),\n",
    "dict(zip(plant_locations, [6851.00,3608.00,6568.00,7061.00,3812.00,4129.00,7044.00,3821.00,5720.00,3662.00,6812.00,6874.00,4450.00,3830.00,3801.00,6667.00,4903.00])),\n",
    "dict(zip(plant_locations, [8523.00,4995.00,8213.00,8794.00,5135.00,5471.00,8750.00,5092.00,7270.00,4325.00,8456.00,8577.00,5898.00,5019.00,4994.00,8269.00,6437.00])),\n",
    "dict(zip(plant_locations, [3831.00,546.00,3520.00,4102.00,233.00,778.00,4057.00,191.00,2577.00,316.00,3763.00,3885.00,1205.00,89.00,0.00,3576.00,1744.00])),\n",
    "dict(zip(plant_locations, [4957.00,1390.00,4647.00,5228.00,1533.00,1905.00,5184.00,1490.00,3704.00,1181.00,4890.00,5011.00,2332.00,1395.00,1370.00,4703.00,2871.00])),\n",
    "dict(zip(plant_locations, [327.00,3396.00,173.00,606.00,3366.00,2942.00,562.00,3415.00,999.00,2975.00,187.00,389.00,2371.00,3580.00,3576.00,0.00,1832.00])),\n",
    "dict(zip(plant_locations, [7334.00,3806.00,7023.00,7605.00,3944.00,4282.00,7560.00,3903.00,6081.00,3399.00,7267.00,7388.00,4708.00,3830.00,3804.00,7080.00,5247.00])),\n",
    "dict(zip(plant_locations, [9168.00,5618.00,8862.00,9417.00,5756.00,6104.00,9392.00,5715.00,7930.00,5196.00,9392.00,9222.00,6521.00,5642.00,5617.00,8918.00,7105.00])),\n",
    "dict(zip(plant_locations, [14552.00,11025.00,11057.00,11524.00,11048.00,11501.00,11504.00,11122.00,11137.00,9280.00,11279.00,11344.00,11927.00,11049.00,11024.00,11116.00,12465.00])),\n",
    "dict(zip(plant_locations, [10383.00,6857.00,10060.00,10657.00,6995.00,7333.00,10607.00,6954.00,9073.00,5715.00,10608.00,10430.00,7759.00,6881.00,12508.00,10116.00,8261.00]))]))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the distances\n",
    "distance6 = dict(zip(supply_points6,[dict(zip(plant_locations, [9662.00,7529.00,9351.00,9933.00,7667.00,8005.00,9888.00,7626.00,8408.00,6360.00,9594.00,9716.00,8432.00,7553.00,7528.00,9407.00,8624.00])),\n",
    "dict(zip(plant_locations, [9594.00,6196.00,9414.00,9808.00,6336.00,6672.00,9794.00,6020.00,8471.00,5165.00,9657.00,9778.00,7099.00,6220.00,6195.00,9470.00,7364.00])),\n",
    "dict(zip(plant_locations, [15871.00,12322.00,10381.00,10848.00,12461.00,12797.00,10828.00,12441.00,10461.00,10365.00,10603.00,10668.00,13108.00,12345.00,12320.00,10440.00,11270.00])),\n",
    "dict(zip(plant_locations, [6882.00,8365.00,6557.00,7139.00,8336.00,7912.00,7094.00,8385.00,6270.00,7660.00,6814.00,6922.00,7341.00,8550.00,8546.00,6627.00,6802.00])),\n",
    "dict(zip(plant_locations, [5332.00,1805.00,5024.00,5603.00,1946.00,2282.00,5558.00,1900.00,4081.00,1631.00,5267.00,5388.00,2709.00,1830.00,1806.00,5080.00,3245.00])),\n",
    "dict(zip(plant_locations, [380.00,3340.00,0.00,581.00,3310.00,2886.00,537.00,3359.00,943.00,2922.00,355.00,365.00,2315.00,3524.00,3520.00,173.00,1776.00])),\n",
    "dict(zip(plant_locations, [3621.00,370.00,3310.00,3891.00,0.00,568.00,3847.00,81.00,2367.00,83.00,3553.00,3674.00,995.00,237.00,233.00,3366.00,1534.00])),\n",
    "dict(zip(plant_locations, [5279.00,2089.00,4996.00,5488.00,2201.00,2557.00,5471.00,2204.00,4147.00,2301.00,5239.00,5301.00,2878.00,2204.00,2174.00,5094.00,3331.00])),\n",
    "dict(zip(plant_locations, [7398.00,8882.00,7074.00,7655.00,8852.00,8428.00,7611.00,8901.00,6786.00,8020.00,7330.00,7438.00,7857.00,9066.00,9062.00,7143.00,7318.00])),\n",
    "dict(zip(plant_locations, [3856.00,5340.00,3532.00,4113.00,5310.00,4886.00,4069.00,5359.00,3245.00,5210.00,3788.00,3896.00,4315.00,5525.00,5520.00,3601.00,3777.00])),\n",
    "dict(zip(plant_locations, [7928.00,4401.00,7617.00,8198.00,4539.00,4876.00,8060.00,4497.00,6675.00,3831.00,8154.00,7981.00,5303.00,4425.00,10049.00,7673.00,5842.00])),\n",
    "dict(zip(plant_locations, [7981.00,9465.00,7657.00,8239.00,9435.00,9011.00,8194.00,9485.00,7370.00,8522.00,7914.00,8022.00,8441.00,9650.00,9645.00,7727.00,7902.00])),\n",
    "dict(zip(plant_locations, [5139.00,1572.00,4829.00,5410.00,1715.00,2087.00,5366.00,1672.00,3886.00,1295.00,5072.00,5193.00,2680.00,1577.00,1552.00,4885.00,3052.00])),\n",
    "dict(zip(plant_locations, [8787.00,5259.00,8476.00,9058.00,5398.00,5735.00,9013.00,5355.00,7533.00,4545.00,8719.00,8841.00,6161.00,5283.00,5258.00,8532.00,6700.00])),\n",
    "dict(zip(plant_locations, [5416.00,1851.00,5106.00,5687.00,1994.00,2364.00,5643.00,1949.00,4163.00,1990.00,5349.00,5470.00,2791.00,1854.00,1829.00,5162.00,3330.00])),\n",
    "dict(zip(plant_locations, [3831.00,546.00,3520.00,4102.00,233.00,778.00,4057.00,191.00,2577.00,316.00,3763.00,3885.00,1205.00,89.00,0.00,3576.00,1744.00])),\n",
    "dict(zip(plant_locations, [4957.00,1390.00,4647.00,5228.00,1533.00,1905.00,5184.00,1490.00,3704.00,1181.00,4890.00,5011.00,2332.00,1395.00,1370.00,4703.00,2871.00])),\n",
    "dict(zip(plant_locations, [9168.00,5618.00,8862.00,9417.00,5756.00,6104.00,9392.00,5715.00,7930.00,5196.00,9392.00,9222.00,6521.00,5642.00,5617.00,8918.00,7105.00])),\n",
    "dict(zip(plant_locations, [14552.00,11025.00,11057.00,11524.00,11048.00,11501.00,11504.00,11122.00,11137.00,9280.00,11279.00,11344.00,11927.00,11049.00,11024.00,11116.00,12465.00]))]))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the distances\n",
    "distance7 = dict(zip(supply_points7, [dict(zip(plant_locations, [9420.00,8607.00,9112.00,9691.00,8747.00,9083.00,9646.00,8704.00,8169.00,7282.00,9355.00,9476.00,8921.00,8631.00,8606.00,9168.00,8382.00])),\n",
    "dict(zip(plant_locations, [7193.00,3665.00,6882.00,7464.00,3804.00,4141.00,7419.00,3761.00,5939.00,3327.94,7125.00,7247.00,4567.00,3689.00,3664.00,6938.00,5106.00])),\n",
    "dict(zip(plant_locations, [9662.00,7529.00,9351.00,9933.00,7667.00,8005.00,9888.00,7626.00,8408.00,6360.00,9594.00,9716.00,8432.00,7553.00,7528.00,9407.00,8624.00])),\n",
    "dict(zip(plant_locations, [9594.00,6196.00,9414.00,9808.00,6336.00,6672.00,9794.00,6020.00,8471.00,5165.00,9657.00,9778.00,7099.00,6220.00,6195.00,9470.00,7364.00])),\n",
    "dict(zip(plant_locations, [15871.00,12322.00,10381.00,10848.00,12461.00,12797.00,10828.00,12441.00,10461.00,10365.00,10603.00,10668.00,13108.00,12345.00,12320.00,10440.00,11270.00])),\n",
    "dict(zip(plant_locations, [6882.00,8365.00,6557.00,7139.00,8336.00,7912.00,7094.00,8385.00,6270.00,7660.00,6814.00,6922.00,7341.00,8550.00,8546.00,6627.00,6802.00])),\n",
    "dict(zip(plant_locations, [11561.00,8033.00,11251.00,11832.00,8173.00,8509.00,11788.00,8130.00,10308.00,6743.00,11494.00,11615.00,8936.00,8057.00,8032.00,11307.00,9474.00])),\n",
    "dict(zip(plant_locations, [3650.00,0.00,3340.00,3921.00,370.00,598.00,3877.00,427.00,2397.00,242.00,3583.00,3704.00,1024.00,571.00,546.00,3396.00,1563.00])),\n",
    "dict(zip(plant_locations, [5332.00,1805.00,5024.00,5603.00,1946.00,2282.00,5558.00,1900.00,4081.00,1631.00,5267.00,5388.00,2709.00,1830.00,1806.00,5080.00,3245.00])),\n",
    "dict(zip(plant_locations, [7561.00,4033.00,7250.00,7832.00,4173.00,4509.00,7788.00,4130.00,6307.00,3595.70,7493.00,7615.00,4935.00,4057.00,4032.00,7306.00,5475.00])),\n",
    "dict(zip(plant_locations, [1589.00,3540.00,1265.00,1847.00,3510.00,3086.00,1802.00,3560.00,1143.00,3243.00,1522.00,1630.00,2515.00,3725.00,3720.00,1335.00,1977.00])),\n",
    "dict(zip(plant_locations, [4620.00,1092.00,4310.00,4891.00,1230.00,1568.00,4847.00,1189.00,3367.00,1336.00,4553.00,4674.00,1994.00,1116.00,1091.00,4366.00,2533.00])),\n",
    "dict(zip(plant_locations, [7759.00,9243.00,7435.00,8017.00,9214.00,8790.00,7972.00,9263.00,7148.00,8308.00,7692.00,7800.00,8219.00,9428.00,9424.00,7505.00,7680.00])),\n",
    "dict(zip(plant_locations, [7398.00,8882.00,7074.00,7655.00,8852.00,8428.00,7611.00,8901.00,6786.00,8020.00,7330.00,7438.00,7857.00,9066.00,9062.00,7143.00,7318.00])),\n",
    "dict(zip(plant_locations, [310.00,3877.00,537.00,71,3847.00,3423.00,0,3896.00,1480.00,3363.00,421.00,203.00,2852.00,4061.00,4057.00,562.00,2313.00])),\n",
    "dict(zip(plant_locations, [3856.00,5340.00,3532.00,4113.00,5310.00,4886.00,4069.00,5359.00,3245.00,5210.00,3788.00,3896.00,4315.00,5525.00,5520.00,3601.00,3777.00])),\n",
    "dict(zip(plant_locations, [13061.00,9534.00,12745.00,13332.00,9673.00,10011.00,13286.00,9631.00,11791.00,8088.00,12977.00,13099.00,10419.00,9541.00,9516.00,12790.00,10974.00])),\n",
    "dict(zip(plant_locations, [7284.00,3756.00,6973.00,7555.00,3894.00,4231.00,7510.00,3852.00,6030.00,3335.00,7216.00,7338.00,4658.00,3780.00,3755.00,7029.00,5197.00])),\n",
    "dict(zip(plant_locations, [8570.00,5524.00,8260.00,8841.00,5662.00,6000.00,8797.00,5620.00,7317.00,5500.00,8797.00,8624.00,6426.00,5548.00,5523.00,8316.00,6965.00])),\n",
    "dict(zip(plant_locations, [1253.00,2397.00,943.00,1524.00,2367.00,1943.00,1480.00,2416.00,0.00,2086.00,1186.00,1307.00,1372.00,2582.00,2577.00,999.00,833.00])),\n",
    "dict(zip(plant_locations, [8277.00,4750.00,7967.00,8548.00,4889.00,5224.00,8504.00,4847.00,7025.00,4119.00,8213.00,8334.00,5654.00,4775.00,4751.00,8025.00,6190.00])),\n",
    "dict(zip(plant_locations, [140.00,3583.00,355.00,490.00,3553.00,3423.00,421.00,3602.00,1186.00,3139.00,0.00,219.00,2558.00,3767.00,3763.00,187.00,2019.00])),\n",
    "dict(zip(plant_locations, [108.00,3704.00,365.00,274.00,3674.00,3250.00,203.00,3724.00,1307.00,3203.00,219.00,0.00,2680.00,3889.00,3885.00,389.00,2141.00])),\n",
    "dict(zip(plant_locations, [2626.00,1024.00,2315.00,2897.00,995.00,571.00,2852.00,1044.00,1372.00,828.00,2558.00,2680.00,0.00,1209.00,1205.00,2371.00,539.00])),\n",
    "dict(zip(plant_locations, [4226.00,5710.00,3902.00,4483.00,5680.00,5256.00,4439.00,5729.00,3614.00,5531.00,4158.00,4266.00,4685.00,5894.00,5890.00,3971.00,4146.00])),\n",
    "dict(zip(plant_locations, [4824.00,5347.00,4514.00,5095.00,5318.00,4894.00,5050.00,5367.00,3571.00,7346.00,4757.00,4878.00,4323.00,5534.00,5530.00,4572.00,3786.00])),\n",
    "dict(zip(plant_locations, [5631.00,2103.00,5321.00,5902.00,2242.00,2579.00,5858.00,2200.00,4378.00,2004.00,5564.00,5685.00,3006.00,2127.00,2102.00,5377.00,3545.00])),\n",
    "dict(zip(plant_locations, [5102.00,6585.00,4778.00,5359.00,6556.00,6132.00,5315.00,6605.00,4490.00,6341.00,5034.00,5142.00,5561.00,6770.00,6766.00,4847.00,5022.00])),\n",
    "dict(zip(plant_locations, [327.00,3396.00,173.00,606.00,3366.00,2942.00,562.00,3415.00,999.00,2975.00,187.00,389.00,2371.00,3580.00,3576.00,0.00,1832.00])),\n",
    "dict(zip(plant_locations, [7334.00,3806.00,7023.00,7605.00,3944.00,4282.00,7560.00,3903.00,6081.00,3399.00,7267.00,7388.00,4708.00,3830.00,3804.00,7080.00,5247.00])),\n",
    "dict(zip(plant_locations, [9168.00,5618.00,8862.00,9417.00,5756.00,6104.00,9392.00,5715.00,7930.00,5196.00,9392.00,9222.00,6521.00,5642.00,5617.00,8918.00,7105.00])),\n",
    "dict(zip(plant_locations, [14552.00,11025.00,11057.00,11524.00,11048.00,11501.00,11504.00,11122.00,11137.00,9280.00,11279.00,11344.00,11927.00,11049.00,11024.00,11116.00,12465.00])),\n",
    "dict(zip(plant_locations, [4964.00,6448.00,4640.00,5221.00,6418.00,5994.00,5177.00,6467.00,4353.00,6368.00,4896.00,5004.00,5423.00,6633.00,6628.00,4709.00,4884.00]))]))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the distances\n",
    "distance8 = dict(zip(supply_points8, [dict(zip(plant_locations, [9662.00,7529.00,9351.00,9933.00,7667.00,8005.00,9888.00,7626.00,8408.00,6360.00,9594.00,9716.00,8432.00,7553.00,7528.00,9407.00,8624.00])),\n",
    "dict(zip(plant_locations, [4867.00,6351.00,4543.00,5125.00,6321.00,5897.00,5080.00,6371.00,4256.00,6126.00,4800.00,4908.00,5326.00,6536.00,6531.00,4613.00,4788.00])),\n",
    "dict(zip(plant_locations, [8271.00,5873.00,7961.00,8542.00,6011.00,6349.00,8498.00,5969.00,7018.00,5413.00,8498.00,8325.00,6775.00,5897.00,9537.00,8017.00,7233.00])),\n",
    "dict(zip(plant_locations, [6882.00,8365.00,6557.00,7139.00,8336.00,7912.00,7094.00,8385.00,6270.00,7660.00,6814.00,6922.00,7341.00,8550.00,8546.00,6627.00,6802.00])),\n",
    "dict(zip(plant_locations, [12209.00,8682.00,11893.00,12480.00,8820.00,9158.00,12433.00,8779.00,10937.00,8500.00,12317.00,12259.00,9583.00,8706.00,8681.00,11949.00,10122.00])),\n",
    "dict(zip(plant_locations, [1589.00,3540.00,1265.00,1847.00,3510.00,3086.00,1802.00,3560.00,1143.00,3243.00,1522.00,1630.00,2515.00,3725.00,3720.00,1335.00,1977.00])),\n",
    "dict(zip(plant_locations, [4660.00,6030.00,4336.00,4917.00,6000.00,5576.00,4873.00,6049.00,4050.00,5814.00,4592.00,4700.00,5005.00,6215.00,6210.00,4405.00,4466.00])),\n",
    "dict(zip(plant_locations, [8823.00,5073.00,8512.00,9093.00,5211.00,5549.00,9049.00,5050.00,7569.00,4594.00,9049.00,8877.00,5975.00,5097.00,5072.00,8568.00,6514.00])),\n",
    "dict(zip(plant_locations, [8206.00,4678.00,7895.00,8477.00,4816.00,5154.00,8432.00,4774.00,6952.00,4138.00,8432.00,8259.00,5580.00,4702.00,4677.00,7951.00,6119.00])),\n",
    "dict(zip(plant_locations, [3856.00,5340.00,3532.00,4113.00,5310.00,4886.00,4069.00,5359.00,3245.00,5210.00,3788.00,3896.00,4315.00,5525.00,5520.00,3601.00,3777.00])),\n",
    "dict(zip(plant_locations, [13061.00,9534.00,12745.00,13332.00,9673.00,10011.00,13286.00,9631.00,11791.00,8088.00,12977.00,13099.00,10419.00,9541.00,9516.00,12790.00,10974.00])),\n",
    "dict(zip(plant_locations, [3942.00,5464.00,3618.00,4199.00,5434.00,5010.00,4155.00,5483.00,3331.00,5215.20,4155.00,3982.00,4439.00,5649.00,5644.00,3687.00,3900.00])),\n",
    "dict(zip(plant_locations, [8570.00,5524.00,8260.00,8841.00,5662.00,6000.00,8797.00,5620.00,7317.00,5052.00,8797.00,8624.00,6426.00,5548.00,5523.00,8316.00,6965.00])),\n",
    "dict(zip(plant_locations, [5794.00,7278.00,5470.00,6051.00,7248.00,6824.00,6007.00,7297.00,5182.00,6834.00,6007.00,5834.00,6253.00,7462.00,7458.00,5539.00,5714.00])),\n",
    "dict(zip(plant_locations, [2531.00,4039.00,2207.00,2788.00,4010.00,3586.00,2744.00,4059.00,1920.00,3991.00,2464.00,2572.00,3015.00,4224.00,4220.00,2276.00,2476.00])),\n",
    "dict(zip(plant_locations, [5102.00,6585.00,4778.00,5359.00,6556.00,6132.00,5315.00,6605.00,4490.00,6341.00,5034.00,5142.00,5561.00,6770.00,6766.00,4847.00,5022.00])),\n",
    "dict(zip(plant_locations, [4964.00,6448.00,4640.00,5221.00,6418.00,5994.00,5177.00,6467.00,4353.00,6368.00,4896.00,5004.00,5423.00,6633.00,6628.00,4709.00,4884.00]))]))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the distances\n",
    "distance9 = dict(zip(supply_points9, [dict(zip(plant_locations, [5729.00,2163.00,5419.00,6000.00,2306.00,2677.00,5955.00,2262.00,4476.00,2106.00,5662.00,5783.00,3103.00,2167.00,2142.00,5475.00,3642.00])),\n",
    "dict(zip(plant_locations, [7193.00,3665.00,6882.00,7464.00,3804.00,4141.00,7419.00,3761.00,5939.00,3327.94,7125.00,7247.00,4567.00,3689.00,3664.00,6938.00,5106.00])),\n",
    "dict(zip(plant_locations, [6882.00,8365.00,6557.00,7139.00,8336.00,7912.00,7094.00,8385.00,6270.00,7660.00,6814.00,6922.00,7341.00,8550.00,8546.00,6627.00,6802.00])),\n",
    "dict(zip(plant_locations, [7561.00,4033.00,7250.00,7832.00,4173.00,4509.00,7788.00,4130.00,6307.00,3595.70,7493.00,7615.00,4935.00,4057.00,4032.00,7306.00,5475.00])),\n",
    "dict(zip(plant_locations, [5332.00,1805.00,5024.00,5603.00,1946.00,2282.00,5558.00,1900.00,4081.00,1631.00,5267.00,5388.00,2709.00,1830.00,1806.00,5080.00,3245.00])),\n",
    "dict(zip(plant_locations, [7561.00,4034.00,7250.00,7832.00,4173.00,4509.00,7788.00,4130.00,6307.00,3595.70,7493.00,7615.00,4935.00,4057.00,4032.00,7306.00,5475.00])),\n",
    "dict(zip(plant_locations, [6021.00,7505.00,5697.00,6278.00,7475.00,7051.00,6234.00,7524.00,5410.00,6949.00,5953.00,6061.00,6480.00,7690.00,7685.00,5766.00,5941.00])),\n",
    "dict(zip(plant_locations, [5615.00,2047.00,5304.00,5886.00,2192.00,2563.00,5841.00,2148.00,4362.00,1992.00,5547.00,5669.00,2989.00,2052.00,2028.00,5360.00,3528.00])),\n",
    "dict(zip(plant_locations, [1589.00,3540.00,1265.00,1847.00,3510.00,3086.00,1802.00,3560.00,1143.00,3243.00,1522.00,1630.00,2515.00,3725.00,3720.00,1335.00,1977.00])),\n",
    "dict(zip(plant_locations, [4620.00,1092.00,4310.00,4891.00,1230.00,1568.00,4847.00,1189.00,3367.00,1336.00,4553.00,4674.00,1994.00,1116.00,1091.00,4366.00,2533.00])),\n",
    "dict(zip(plant_locations, [7759.00,9243.00,7435.00,8017.00,9214.00,8790.00,7972.00,9263.00,7148.00,8308.00,7692.00,7800.00,8219.00,9428.00,9424.00,7505.00,7680.00])),\n",
    "dict(zip(plant_locations, [7398.00,8882.00,7074.00,7655.00,8852.00,8428.00,7611.00,8901.00,6786.00,8020.00,7330.00,7438.00,7857.00,9066.00,9062.00,7143.00,7318.00])),\n",
    "dict(zip(plant_locations, [3856.00,5340.00,3532.00,4113.00,5310.00,4886.00,4069.00,5359.00,3245.00,5210.00,3788.00,3896.00,4315.00,5525.00,5520.00,3601.00,3777.00])),\n",
    "dict(zip(plant_locations, [13061.00,9534.00,12745.00,13332.00,9673.00,10011.00,13286.00,9631.00,11791.00,8088.00,12977.00,13099.00,10419.00,9541.00,9516.00,12790.00,10974.00])),\n",
    "dict(zip(plant_locations, [7284.00,3756.00,6973.00,7555.00,3894.00,4231.00,7510.00,3852.00,6030.00,3335.00,7216.00,7338.00,4658.00,3780.00,3755.00,7029.00,5197.00])),\n",
    "dict(zip(plant_locations, [8277.00,4750.00,7967.00,8548.00,4889.00,5224.00,8504.00,4847.00,7025.00,4119.00,8213.00,8334.00,5654.00,4775.00,4751.00,8025.00,6190.00])),\n",
    "dict(zip(plant_locations, [7981.00,9465.00,7657.00,8239.00,9435.00,9011.00,8194.00,9485.00,7370.00,8522.00,7914.00,8022.00,8441.00,9650.00,9645.00,7727.00,7902.00])),\n",
    "dict(zip(plant_locations, [5139.00,1572.00,4829.00,5410.00,1715.00,2087.00,5366.00,1672.00,3886.00,1295.00,5072.00,5193.00,2680.00,1577.00,1552.00,4885.00,3052.00])),\n",
    "dict(zip(plant_locations, [8787.00,5259.00,8476.00,9058.00,5398.00,5735.00,9013.00,5355.00,7533.00,4545.00,8719.00,8841.00,6161.00,5283.00,5258.00,8532.00,6700.00])),\n",
    "dict(zip(plant_locations, [5631.00,2103.00,5321.00,5902.00,2242.00,2579.00,5858.00,2200.00,4378.00,2004.00,5564.00,5685.00,3006.00,2127.00,2102.00,5377.00,3545.00])),\n",
    "dict(zip(plant_locations, [5102.00,6585.00,4778.00,5359.00,6556.00,6132.00,5315.00,6605.00,4490.00,6341.00,5034.00,5142.00,5561.00,6770.00,6766.00,4847.00,5022.00])),\n",
    "dict(zip(plant_locations, [3831.00,546.00,3520.00,4102.00,233.00,778.00,4057.00,191.00,2577.00,316.00,3763.00,3885.00,1205.00,89.00,0.00,3576.00,1744.00])),\n",
    "dict(zip(plant_locations, [7334.00,3806.00,7023.00,7605.00,3944.00,4282.00,7560.00,3903.00,6081.00,3399.00,7267.00,7388.00,4708.00,3830.00,3804.00,7080.00,5247.00])),\n",
    "dict(zip(plant_locations, [9168.00,5618.00,8862.00,9417.00,5756.00,6104.00,9392.00,5715.00,7930.00,5196.00,9392.00,9222.00,6521.00,5642.00,5617.00,8918.00,7105.00])),\n",
    "dict(zip(plant_locations, [14552.00,11025.00,11057.00,11524.00,11048.00,11501.00,11504.00,11122.00,11137.00,9280.00,11279.00,11344.00,11927.00,11049.00,11024.00,11116.00,12465.00])),\n",
    "dict(zip(plant_locations, [4964.00,6448.00,4640.00,5221.00,6418.00,5994.00,5177.00,6467.00,4353.00,6368.00,4896.00,5004.00,5423.00,6633.00,6628.00,4709.00,4884.00]))]))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the Vehicle Demand\n",
    "vehicle_demands=dict(zip(demand_points, [52926740.45,20211709.62,219933980.04,150919247.29,216546853.27,219082653.37,107530347.57,133005844.58,49856593.12,150185708.09,11357941.91,55444187.63,255172735.53,255172735.53,30226871.78,133474473.15,494016476.75,16109213.06]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the Carbon Fiber Supply\n",
    "Fiber_supply=dict(zip(supply_points2, [7891206.716800,4720787.525080,3013639.269080,1741988.017000,1532949.455000,1498109.694000,1289071.132000,1080032.570000,1010353.050000,870994.008400,627115.686000,256623.912100,178873.092100])) "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the Steel Supply\n",
    "steel_supply=dict(zip(supply_points3, [433438.5346,86572.46439,410785.5516,886729.9023,229526.3324,2941756.854,262020.8163,880221.9105,87274618.13,339760.1248,1041776.954,545487.6131,3719616.786,16711.7605,18348867.96,579304.3525,6144062.094,27982.34405,2071579.511,8043696.209,13105.60008,6110162.948,1695886.675,47202.85793,594200.7707,172724.7541,290885.9597,808678.2787,428886.2435,3844381.91,1875103.958,1896674.586,293515.3983,165006.3678,414129.3522,531352.2442,1253213.916,510227.8693,3403.991027,1991149.524,371006.8178,2882638.496,40880.76958,357537.6413,620215.2676,4534254.769,3160485.568,10790773.16])) "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the HSS Supply\n",
    "HSS_supply=dict(zip(supply_points4, [866877.0693,173144.9288,821572.1032,1773459.805,459052.6648,5883513.708,524041.6326,1760443.821,174549236.3,679520.2497,2083553.909,1090975.226,7439233.572,33423.521,36697735.91,1158608.705,12288124.19,55964.6881,4143159.023,16087392.42,26211.20016,12220325.9,3391773.351,94405.71585,1188401.541,345449.5083,581771.9193,1617356.557,857772.4871,7688763.821,3750207.916,3793349.172,587030.7966,330012.7357,828258.7044,1062704.488,2506427.832,1020455.739,6807.982054,3982299.048,742013.6356,5765276.992,81761.53917,715075.2826,1240430.535,9068509.538,6320971.137,21581546.32]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the Aluminium Supply\n",
    "aluminium_supply=dict(zip(supply_points5, [1750418.373,1108486.991,5259760.632,152870.6086,5846232.525,583785.2387,2405044.613,286578.9516,7130120.719,2122464.834,267850261.2,1178963.884,2903970.469,2541200.847,159171.9705,662387.6583,7691376.454,56655403.55,5188197.412,137744624.1,1888157.9,28443.63952,724801.9126,1052630.169,1883968.768,110143.3931,380422.1379,8080791.105,964428.5326,1312543.345,71076.45981,5162036.898,1900360.293,148867.4242,2820733.861,1017712.828,7634624.871,3723801.549,3766639.035,1121081.872,351723.7786,2886609.143,1384623.344,533795.8943,105019.7955,5143227.069,237073.6777,299230.0617,26856798.65,0,\n",
    "0,0,557404.5143])) "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the Magnesium Supply\n",
    "magnesium_supply=dict(zip(supply_points6, [4204466.2090,1222172.6320,363811.2924,298590444.7000,2010234.6250,1585983.9250,7566106.3450,6113002.8630,4078244.4230,47579.5177,5189339.4020,9195220.1200,4484984.5940,4536578.4990,379084.0981,3324539.5030,41313949.6100,10124868.6300,7057279.1490]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the Plastic Supply\n",
    "plastic_supply=dict(zip(supply_points7, [3484953.6435,3021067.5020,7945692.0017,1637839.3004,7771532.4984,234997919.6606,2509165.8953,731840.0219,6474235.9733,16669297.2185,10078880.5696,9565903.5174,13163659.9622,44795024.7538,887965.8933,12318631.8073,6272914.5326,2745849.6660,243946.6740,665974.4200,4350000.5481,1775931.7866,9520988.2609,5352440.4517,20157761.1392,1219733.3699,5144723.8347,19037885.5204,3995846.5198,5051019.5284,27723150.5426,19323708.4517,5599378.0942]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the Rubber Supply\n",
    "rubber_supply=dict(zip(supply_points8, [1258648.2900,8234049.7510,217343.9060,8784079.7960,3935392.5450,6522791.1570,34239646.0300,3411326.1430,603911.1280,5312726.1900,330881.7674,1946363.3380,1386711.0420,2541650.1950,741564.4317,49185954.9800,25617418.0800])) "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Inputing the Glass Supply\n",
    "glass_supply=dict(zip(supply_points9, [897756.3973,3142147.3790,16877820.2100,2513717.9040,4039903.7740,9785544.6960,3788531.9830,1346634.5910,1256858.9520,3411474.2980,4039903.7740,1975064.0670,1526185.8700,1975064.0670,1705737.1490,3052371.7400,498472.9915,243131.0679,245927.9741,1615961.5090,1077307.6730,1256858.9520,1795512.7880,4708260.2780,3281771.6290,1077307.6730])) "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Decision Variables\n",
    "X1 = LpVariable.dicts('X1%s%s', (demand_points, plant_locations),\n",
    "                     cat = 'Binary',\n",
    "                     lowBound = 0,\n",
    "                     upBound = 1)\n",
    "X2 = LpVariable.dicts('X2%s%s', (supply_points2, plant_locations),\n",
    "                     cat = 'Continous',\n",
    "                     lowBound = 0,\n",
    "                     upBound = 1)\n",
    "X3 = LpVariable.dicts('X3%s%s', (supply_points3, plant_locations),\n",
    "                     cat = 'Continous',\n",
    "                     lowBound = 0,\n",
    "                     upBound = 1)\n",
    "X4 = LpVariable.dicts('X4%s%s', (supply_points4, plant_locations),\n",
    "                     cat = 'Continous',\n",
    "                     lowBound = 0,\n",
    "                     upBound = 1)\n",
    "X5 = LpVariable.dicts('X5%s%s', (supply_points5, plant_locations),\n",
    "                     cat = 'Continous',\n",
    "                     lowBound = 0,\n",
    "                     upBound = 1)\n",
    "X6 = LpVariable.dicts('X6%s%s', (supply_points6, plant_locations),\n",
    "                     cat = 'Continous',\n",
    "                     lowBound = 0,\n",
    "                     upBound = 1)\n",
    "X7 = LpVariable.dicts('X7%s%s', (supply_points7, plant_locations),\n",
    "                     cat = 'Continous',\n",
    "                     lowBound = 0,\n",
    "                     upBound = 1)\n",
    "X8 = LpVariable.dicts('X8%s%s', (supply_points8, plant_locations),\n",
    "                     cat = 'Continous',\n",
    "                     lowBound = 0,\n",
    "                     upBound = 1)\n",
    "X9 = LpVariable.dicts('X9%s%s', (supply_points9, plant_locations),\n",
    "                     cat = 'Continous',\n",
    "                     lowBound = 0,\n",
    "                     upBound = 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Setting up the minimization problem\n",
    "\n",
    "prob=LpProblem ('P Median',LpMinimize)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Setting up the minimization problem\n",
    "prob+= (sum(sum(vehicle_demands[i]*distance1[i][j]*X1[i][j] for i in demand_points) for j in plant_locations) \n",
    "        + sum(sum(Fiber_supply[i]*distance2[i][j]*X2[i][j] for i in supply_points2) for j in plant_locations)\n",
    "        + sum(sum(steel_supply[i]*distance3[i][j]*X3[i][j] for i in supply_points3) for j in plant_locations)\n",
    "        + sum(sum(HSS_supply[i]*distance4[i][j]*X4[i][j] for i in supply_points4) for j in plant_locations) \n",
    "        + sum(sum(aluminium_supply[i]*distance5[i][j]*X5[i][j] for i in supply_points5) for j in plant_locations) \n",
    "        + sum(sum(magnesium_supply[i]*distance6[i][j]*X6[i][j] for i in supply_points6) for j in plant_locations) \n",
    "        + sum(sum(plastic_supply[i]*distance7[i][j]*X7[i][j] for i in supply_points7) for j in plant_locations) \n",
    "        + sum(sum(rubber_supply[i]*distance8[i][j]*X8[i][j] for i in supply_points8) for j in plant_locations) \n",
    "        + sum(sum(glass_supply[i]*distance9[i][j]*X9[i][j] for i in supply_points9) for j in plant_locations))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Setting up constraints\n",
    "plant_numbers=8\n",
    "prob+= sum(X1[j][j] for j in plant_locations)==plant_numbers"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [],
   "source": [
    "for i in demand_points:\n",
    "    prob+= sum(X1[i][j] for j in plant_locations)==1\n",
    "for i in supply_points2:\n",
    "    prob+= sum(X2[i][j] for j in plant_locations)==1\n",
    "for i in supply_points3:\n",
    "    prob+= sum(X3[i][j] for j in plant_locations)==1\n",
    "for i in supply_points4:\n",
    "    prob+= sum(X4[i][j] for j in plant_locations)==1\n",
    "for i in supply_points5:\n",
    "    prob+= sum(X5[i][j] for j in plant_locations)==1\n",
    "for i in supply_points6:\n",
    "    prob+= sum(X6[i][j] for j in plant_locations)==1\n",
    "for i in supply_points7:\n",
    "    prob+= sum(X7[i][j] for j in plant_locations)==1\n",
    "for i in supply_points8:\n",
    "    prob+= sum(X8[i][j] for j in plant_locations)==1\n",
    "for i in supply_points9:\n",
    "    prob+= sum(X9[i][j] for j in plant_locations)==1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [],
   "source": [
    "for i in demand_points:\n",
    "    for j in plant_locations:\n",
    "        prob+= X1[i][j]<=X1[j][j] \n",
    "for i in supply_points2:\n",
    "    for j in plant_locations:\n",
    "        prob+= X2[i][j] <= X1[j][j]\n",
    "for i in supply_points3:\n",
    "    for j in plant_locations:\n",
    "        prob+= X3[i][j] <= X1[j][j]\n",
    "for i in supply_points4:\n",
    "    for j in plant_locations:\n",
    "        prob+= X4[i][j] <= X1[j][j]\n",
    "for i in supply_points5:\n",
    "    for j in plant_locations:\n",
    "        prob+= X5[i][j] <= X1[j][j]\n",
    "for i in supply_points6:\n",
    "    for j in plant_locations:\n",
    "        prob+= X6[i][j] <= X1[j][j]\n",
    "for i in supply_points7:\n",
    "    for j in plant_locations:\n",
    "        prob+= X7[i][j] <= X1[j][j]\n",
    "for i in supply_points8:\n",
    "    for j in plant_locations:\n",
    "        prob+= X8[i][j] <= X1[j][j]\n",
    "for i in supply_points9:\n",
    "    for j in plant_locations:\n",
    "        prob+= X9[i][j] <= X1[j][j]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [],
   "source": [
    "for j in plant_locations:\n",
    "    prob+= sum(vehicle_demands[i]*X1[i][j] for i in demand_points) <= 500000000\n",
    "\n",
    "for j in plant_locations:\n",
    "    prob+= sum(Fiber_supply[i]*X2[i][j] for i in supply_points2) <= 3500000\n",
    "for j in plant_locations:\n",
    "    prob+= sum(steel_supply[i]*X3[i][j] for i in supply_points3) <= 30000000\n",
    "for j in plant_locations:\n",
    "    prob+= sum(HSS_supply[i]*X4[i][j] for i in supply_points4) <= 55000000\n",
    "for j in plant_locations:\n",
    "    prob+= sum(aluminium_supply[i]*X5[i][j] for i in supply_points5) <= 90000000\n",
    "for j in plant_locations:\n",
    "    prob+= sum(magnesium_supply[i]*X6[i][j] for i in supply_points6) <= 70000000\n",
    "for j in plant_locations:\n",
    "    prob+= sum(plastic_supply[i]*X7[i][j] for i in supply_points7) <= 80000000\n",
    "for j in plant_locations:\n",
    "    prob+= sum(rubber_supply[i]*X8[i][j] for i in supply_points8) <= 25000000\n",
    "for j in plant_locations:\n",
    "    prob+= sum(glass_supply[i]*X9[i][j] for i in supply_points9) <= 15000000"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Saving the model to a lp file\n",
    "prob.writeLP(\"p-median.lp\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Status: Optimal\n",
      "Objective:  12690524176043.129\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "{'X1Larnaca_PortMina_Salman': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Alexandria': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Aqaba': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Beirut': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Doha': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Gaza': 1.0,\n",
       " 'X1Larnaca_PortPort_of_Haifa': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Hodeidah': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Jeddah': 0.0,\n",
       " 'X1Larnaca_PortPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Latakia': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Mersin': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Salalah': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Shuwaikh': 0.0,\n",
       " 'X1Larnaca_PortPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Mina_SalmanMina_Salman': 1.0,\n",
       " 'X1Mina_SalmanPort_of_Alexandria': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Aqaba': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Beirut': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Doha': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Gaza': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Haifa': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Hodeidah': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Jeddah': 0.0,\n",
       " 'X1Mina_SalmanPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Latakia': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Mersin': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Salalah': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Shuwaikh': 0.0,\n",
       " 'X1Mina_SalmanPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_AlexandriaMina_Salman': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Alexandria': 1.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Doha': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Gaza': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_AlexandriaPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_AqabaMina_Salman': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Alexandria': 1.0,\n",
       " 'X1Port_of_AqabaPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Doha': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Gaza': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_AqabaPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasMina_Salman': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Bandar_Abbas': 1.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Doha': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Gaza': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_Bandar_AbbasPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_BeirutMina_Salman': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Doha': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Gaza': 1.0,\n",
       " 'X1Port_of_BeirutPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_BeirutPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_DohaMina_Salman': 1.0,\n",
       " 'X1Port_of_DohaPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Doha': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Gaza': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_DohaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_DohaPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_GazaMina_Salman': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Doha': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Gaza': 1.0,\n",
       " 'X1Port_of_GazaPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_GazaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_GazaPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_HaifaMina_Salman': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Doha': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Gaza': 1.0,\n",
       " 'X1Port_of_HaifaPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_HaifaPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_HodeidahMina_Salman': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Doha': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Gaza': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Jeddah': 1.0,\n",
       " 'X1Port_of_HodeidahPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_HodeidahPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_Jebel_AliMina_Salman': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Doha': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Gaza': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Jebel_Ali': 1.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_Jebel_AliPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_JeddahMina_Salman': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Doha': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Gaza': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Jeddah': 1.0,\n",
       " 'X1Port_of_JeddahPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_JeddahPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizMina_Salman': 1.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Doha': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Gaza': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_King_Abdul_AzizPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_LatakiaMina_Salman': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Doha': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Gaza': 1.0,\n",
       " 'X1Port_of_LatakiaPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_LatakiaPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_MersinMina_Salman': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Doha': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Gaza': 1.0,\n",
       " 'X1Port_of_MersinPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_MersinPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_MersinPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_SalalahMina_Salman': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Doha': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Gaza': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Salalah': 1.0,\n",
       " 'X1Port_of_SalalahPort_of_Shuwaikh': 0.0,\n",
       " 'X1Port_of_SalalahPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_ShuwaikhMina_Salman': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Doha': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Gaza': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Shuwaikh': 1.0,\n",
       " 'X1Port_of_ShuwaikhPort_of_Umm_Qasr': 0.0,\n",
       " 'X1Port_of_Umm_QasrMina_Salman': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Alexandria': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Aqaba': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Bandar_Abbas': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Beirut': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Doha': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Gaza': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Haifa': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Hodeidah': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Jebel_Ali': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Jeddah': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Latakia': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Mersin': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Salalah': 0.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Shuwaikh': 1.0,\n",
       " 'X1Port_of_Umm_QasrPort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_BudapestMina_Salman': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Alexandria': 1.0,\n",
       " 'X2Port_of_BudapestPort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Bandar_Abbas': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Beirut': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Doha': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Gaza': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Haifa': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Jebel_Ali': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Jeddah': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Latakia': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Mersin': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Salalah': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Shuwaikh': 0.0,\n",
       " 'X2Port_of_BudapestPort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_BusanMina_Salman': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Alexandria': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Bandar_Abbas': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Beirut': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Doha': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Gaza': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Haifa': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Jebel_Ali': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Jeddah': 0.0,\n",
       " 'X2Port_of_BusanPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Latakia': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Mersin': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Salalah': 1.0,\n",
       " 'X2Port_of_BusanPort_of_Shuwaikh': 0.0,\n",
       " 'X2Port_of_BusanPort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyMina_Salman': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Alexandria': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Bandar_Abbas': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Beirut': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Doha': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Gaza': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Haifa': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Jebel_Ali': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Jeddah': 1.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Latakia': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Mersin': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Salalah': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Shuwaikh': 0.0,\n",
       " 'X2Port_of_Hamburg_GermanyPort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_ImminghamMina_Salman': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Alexandria': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Bandar_Abbas': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Beirut': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Doha': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Gaza': 1.0,\n",
       " 'X2Port_of_ImminghamPort_of_Haifa': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Jebel_Ali': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Jeddah': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Latakia': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Mersin': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Salalah': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Shuwaikh': 0.0,\n",
       " 'X2Port_of_ImminghamPort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruMina_Salman': 1.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Alexandria': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Bandar_Abbas': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Beirut': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Doha': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Gaza': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Haifa': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Jebel_Ali': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Jeddah': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Latakia': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Mersin': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Salalah': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Shuwaikh': 0.0,\n",
       " 'X2Port_of_Jawaharlal_NehruPort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_KaohsiungMina_Salman': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Alexandria': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Bandar_Abbas': 0.60434832,\n",
       " 'X2Port_of_KaohsiungPort_of_Beirut': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Doha': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Gaza': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Haifa': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Jebel_Ali': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Jeddah': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Latakia': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Mersin': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Salalah': 0.39565168,\n",
       " 'X2Port_of_KaohsiungPort_of_Shuwaikh': 0.0,\n",
       " 'X2Port_of_KaohsiungPort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_Los_AngelesMina_Salman': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Alexandria': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Bandar_Abbas': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Beirut': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Doha': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Gaza': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Haifa': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Jebel_Ali': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Jeddah': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Latakia': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Mersin': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Salalah': 0.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Shuwaikh': 1.0,\n",
       " 'X2Port_of_Los_AngelesPort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_ManzanilloMina_Salman': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Alexandria': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Bandar_Abbas': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Beirut': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Doha': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Gaza': 1.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Haifa': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Jebel_Ali': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Jeddah': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Latakia': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Mersin': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Salalah': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Shuwaikh': 0.0,\n",
       " 'X2Port_of_ManzanilloPort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_MarseilleMina_Salman': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_Alexandria': 0.37239803,\n",
       " 'X2Port_of_MarseillePort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_Bandar_Abbas': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_Beirut': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_Doha': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_Gaza': 0.3254177,\n",
       " 'X2Port_of_MarseillePort_of_Haifa': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_Jebel_Ali': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_Jeddah': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_Latakia': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_Mersin': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_Salalah': 0.30218427,\n",
       " 'X2Port_of_MarseillePort_of_Shuwaikh': 0.0,\n",
       " 'X2Port_of_MarseillePort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_MersinMina_Salman': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Alexandria': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Bandar_Abbas': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Beirut': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Doha': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Gaza': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Haifa': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Jebel_Ali': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Jeddah': 0.55839733,\n",
       " 'X2Port_of_MersinPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Latakia': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Mersin': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Salalah': 0.44160267,\n",
       " 'X2Port_of_MersinPort_of_Shuwaikh': 0.0,\n",
       " 'X2Port_of_MersinPort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_NagoyaMina_Salman': 1.0,\n",
       " 'X2Port_of_NagoyaPort_of_Alexandria': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Beirut': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Doha': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Gaza': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Haifa': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Jebel_Ali': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Jeddah': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Latakia': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Mersin': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Salalah': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Shuwaikh': 0.0,\n",
       " 'X2Port_of_NagoyaPort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_New_YorkMina_Salman': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Alexandria': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Bandar_Abbas': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Beirut': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Doha': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Gaza': 1.0,\n",
       " 'X2Port_of_New_YorkPort_of_Haifa': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Jebel_Ali': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Jeddah': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Latakia': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Mersin': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Salalah': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Shuwaikh': 0.0,\n",
       " 'X2Port_of_New_YorkPort_of_Umm_Qasr': 0.0,\n",
       " 'X2Port_of_ShanghaiMina_Salman': 0.059425747,\n",
       " 'X2Port_of_ShanghaiPort_of_Alexandria': 0.0,\n",
       " 'X2Port_of_ShanghaiPort_of_Aqaba': 0.0,\n",
       " 'X2Port_of_ShanghaiPort_of_Bandar_Abbas': 0.36615374,\n",
       " 'X2Port_of_ShanghaiPort_of_Beirut': 0.0,\n",
       " 'X2Port_of_ShanghaiPort_of_Doha': 0.0,\n",
       " 'X2Port_of_ShanghaiPort_of_Gaza': 0.0,\n",
       " 'X2Port_of_ShanghaiPort_of_Haifa': 0.0,\n",
       " 'X2Port_of_ShanghaiPort_of_Hodeidah': 0.0,\n",
       " 'X2Port_of_ShanghaiPort_of_Jebel_Ali': 0.44353166,\n",
       " 'X2Port_of_ShanghaiPort_of_Jeddah': 0.0,\n",
       " 'X2Port_of_ShanghaiPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X2Port_of_ShanghaiPort_of_Latakia': 0.0,\n",
       " 'X2Port_of_ShanghaiPort_of_Mersin': 0.0,\n",
       " 'X2Port_of_ShanghaiPort_of_Salalah': 0.0,\n",
       " 'X2Port_of_ShanghaiPort_of_Shuwaikh': 0.13088886,\n",
       " 'X2Port_of_ShanghaiPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_AlexandriaMina_Salman': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Alexandria': 1.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Doha': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_AlexandriaPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_AlgecirasMina_Salman': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Doha': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Gaza': 1.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_AlgecirasPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_AntwerpMina_Salman': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Doha': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Gaza': 1.0,\n",
       " 'X3Port_of_AntwerpPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_AntwerpPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_AqabaMina_Salman': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Doha': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Gaza': 1.0,\n",
       " 'X3Port_of_AqabaPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_AqabaPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasMina_Salman': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Bandar_Abbas': 1.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Doha': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_Bandar_AbbasPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_BangkokMina_Salman': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Doha': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Salalah': 1.0,\n",
       " 'X3Port_of_BangkokPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_BangkokPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_BratislavaMina_Salman': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Alexandria': 1.0,\n",
       " 'X3Port_of_BratislavaPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Doha': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_BratislavaPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_BudapestMina_Salman': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Alexandria': 1.0,\n",
       " 'X3Port_of_BudapestPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Doha': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_BudapestPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_Buenos_AiresMina_Salman': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Doha': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Gaza': 1.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_Buenos_AiresPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_BusanMina_Salman': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Doha': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Jebel_Ali': 1.0,\n",
       " 'X3Port_of_BusanPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_BusanPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_BusanPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_CasablancaMina_Salman': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Doha': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Gaza': 1.0,\n",
       " 'X3Port_of_CasablancaPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_CasablancaPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_DohaMina_Salman': 1.0,\n",
       " 'X3Port_of_DohaPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Doha': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_DohaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_DohaPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_DurbanMina_Salman': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Doha': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Jeddah': 1.0,\n",
       " 'X3Port_of_DurbanPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_DurbanPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_GdanskMina_Salman': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Doha': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Gaza': 1.0,\n",
       " 'X3Port_of_GdanskPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_GdanskPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_Gioia_TauroMina_Salman': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Alexandria': 1.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Doha': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_Gioia_TauroPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_GothenburgMina_Salman': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Doha': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Gaza': 1.0,\n",
       " 'X3Port_of_GothenburgPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_GothenburgPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_HaifaMina_Salman': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Doha': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Gaza': 1.0,\n",
       " 'X3Port_of_HaifaPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_HaifaPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckMina_Salman': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Doha': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Gaza': 1.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_Hamburg_CzeckPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyMina_Salman': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Doha': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Gaza': 1.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_Hamburg_GermanyPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_HedlandMina_Salman': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Doha': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Jebel_Ali': 1.0,\n",
       " 'X3Port_of_HedlandPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_HedlandPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_ImminghamMina_Salman': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Doha': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Gaza': 1.0,\n",
       " 'X3Port_of_ImminghamPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_ImminghamPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruMina_Salman': 1.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Doha': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_Jawaharlal_NehruPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_Jebel_AliMina_Salman': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Doha': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Jebel_Ali': 1.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_Jebel_AliPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_JeddahMina_Salman': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Doha': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Jeddah': 1.0,\n",
       " 'X3Port_of_JeddahPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_JeddahPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_KaohsiungMina_Salman': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Bandar_Abbas': 1.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Doha': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_KaohsiungPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_KarachiMina_Salman': 1.0,\n",
       " 'X3Port_of_KarachiPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Doha': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Shuwaikh': 0.0,\n",
       " 'X3Port_of_KarachiPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizMina_Salman': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Doha': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Gaza': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Mersin': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Salalah': 0.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Shuwaikh': 1.0,\n",
       " 'X3Port_of_King_Abdul_AzizPort_of_Umm_Qasr': 0.0,\n",
       " 'X3Port_of_LatakiaMina_Salman': 0.0,\n",
       " 'X3Port_of_LatakiaPort_of_Alexandria': 0.0,\n",
       " 'X3Port_of_LatakiaPort_of_Aqaba': 0.0,\n",
       " 'X3Port_of_LatakiaPort_of_Bandar_Abbas': 0.0,\n",
       " 'X3Port_of_LatakiaPort_of_Beirut': 0.0,\n",
       " 'X3Port_of_LatakiaPort_of_Doha': 0.0,\n",
       " 'X3Port_of_LatakiaPort_of_Gaza': 1.0,\n",
       " 'X3Port_of_LatakiaPort_of_Haifa': 0.0,\n",
       " 'X3Port_of_LatakiaPort_of_Hodeidah': 0.0,\n",
       " 'X3Port_of_LatakiaPort_of_Jebel_Ali': 0.0,\n",
       " 'X3Port_of_LatakiaPort_of_Jeddah': 0.0,\n",
       " 'X3Port_of_LatakiaPort_of_King_Abdul_Aziz': 0.0,\n",
       " 'X3Port_of_LatakiaPort_of_Latakia': 0.0,\n",
       " 'X3Port_of_LatakiaPort_of_Mersin': 0.0,\n",
       " ...}"
      ]
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "prob.solve()\n",
    "\n",
    "print(\"Status:\",LpStatus[prob.status]) \n",
    "print(\"Objective: \",value(prob.objective))\n",
    "varsdict = {}\n",
    "for v in prob.variables():\n",
    "    varsdict[v.name] = v.varValue\n",
    "varsdict"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
